Excel 我是否需要创建第二个脚本字典?

Excel 我是否需要创建第二个脚本字典?,excel,vba,Excel,Vba,我有一个表,其中包含员工的详细信息,如分配给他们的部门和分支机构 我正在用下面的代码获取独特的分支 Dim data(), dict As Object, r As Long Set dict = CreateObject("Scripting.Dictionary") data = Sheets("Employee").UsedRange.Columns(5).Value For r = 1 To UBound(data) dict(data(r, 1)) = Empty Next

我有一个表,其中包含员工的详细信息,如分配给他们的部门和分支机构

我正在用下面的代码获取独特的分支

Dim data(), dict As Object, r As Long
Set dict = CreateObject("Scripting.Dictionary")

data = Sheets("Employee").UsedRange.Columns(5).Value

For r = 1 To UBound(data)
    dict(data(r, 1)) = Empty
Next

data = WorksheetFunction.Transpose(dict.Keys())

要获取每个分支所属的关联分区(表中左侧的列),我应该创建第二个脚本字典,还是有更简单或更有效的方法?

为什么不将分区存储在该分支的字典条目中,而不是存储一个
空值:

Dim data(), dict As Object, r As Long
Set dict = CreateObject("Scripting.Dictionary")

data = Sheets("Employee").UsedRange.Columns(5)

For each rngCell in data
    dict(rngCell.value) = rngCell.offset(,1).value
Next

data = WorksheetFunction.Transpose(dict.Keys())

我不确定您想在这里完成什么,因此我无法对代码的其余部分(之后的转置)进行注释,但至少您的所有内容都在同一位置。

将“关联除法”作为值存储在字典中(而不是将值留空)?你的问题实在太模糊了,无法回答。你是否想创建第二本词典取决于你想用它做什么。啊,好建议。我所需要做的就是获取分支分配的除法,这样我就可以将该值放入另一个单元格中。明白了。我只是想打印所有独特的分支。我的下一行代码是Range(dataRange)=要打印出来的数据