【问题标题】:Selecting nested supervisors details for employee in excel sheet在 Excel 工作表中选择员工的嵌套主管详细信息
【发布时间】:2023-04-02 19:54:02
【问题描述】:

我有一个场景,员工数据在 Excel 表中给出,并附有他的主管详细信息(姓名和电子邮件 ID)。主管本身就是雇员,因此他将拥有主管的详细信息(姓名和电子邮件 ID)等等......

表格格式-

emp_name email_id supervisor1_name supervisor1_emailid
abc abc@xyz.com pqr pqr@xyz.com
--------------------------------------
--------------------------------------
pqr pqr@xyz.com lmn lmn@xyz.com

我想在excel表格本身中显示以上数据,如下所示,

emp_name email_id supervisor1_name supervisor1_emailid supervisor2_name supprvisor2_emailid
abc abc@xyz.com pqr pqr@xyz.com lmn lmn@xyz.com

等等主管的详细信息…………

每个员工的最后一位主管详细信息。

我不知道 excel 中的 vba 或宏。
我可以通过在 excel 中使用 vlookup 函数来做到这一点,但它需要太多时间,所以我想以编程方式通过快速和快速的方式来做到这一点。

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    也许这会帮助你开始。

    Dim FirstRow As Integer
    Dim EndRow As Integer
    FirstRow = 2
    EndRow = ActiveSheet.Cells(ActiveSheet.Rows.Count, 2).End(xlUp).row
    
    Dim supName As String
    Dim secRow As Long
    
    For row = FirstRow To EndRow
        supName = Range("C" & row)
        If supName <> "" Then
            Do Until supName = ""
                For secRow = FirstRow To EndRow
                    If Range("A" & secRow) = supName Then
                        Cells(row, Cells(row, Sheets(1).Columns.Count).End(-4159).Column + 1) = Range("C" & secRow)
                        Cells(row, Cells(row, Sheets(1).Columns.Count).End(-4159).Column + 1) = Range("D" & secRow)
                        supName = Range("C" & secRow)
                        Exit For
                    End If
                Next secRow
            Loop
        End If
    Next row
    

    【讨论】:

      猜你喜欢
      • 2020-11-22
      • 2015-08-13
      • 2020-10-08
      • 2016-04-24
      • 2016-01-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多