Excel VBA-匹配范围内值的所有实例并返回相邻值

时间:2019-03-07 18:13:56

标签: excel vba

我有一个人的名单,每个人都属于一个或多个组。我需要找出每个人所属的所有组。

在一栏中,我列出了姓名。在另一列中,我具有属于每个组的名称的 combined (组合)列表,名称之间没有空格或分隔符。我希望结果在包含该人所属的所有组的单元格旁边显示每个名称。请参见下面的示例,其中黄色列是期望的结果:

enter image description here

我曾考虑过为每个名称创建一个数组,但没有成功。这是我到目前为止的vba,不确定我是否朝着正确的方向前进。

 Sub Test()
Dim range_1 As Range
Dim range_2 As Range

Set range_1 = Range("Names")
Set range_2 = Range("Combined_Names")

Dim v As Variant

Dim myArray() As Double, X As Long
X = 0
ReDim Preserve myArray(X)
For Each cell In range_1
    v = range_1.Value
        If v <> "" Then
            For Each cell In range_2
                w = range_2.Value
                If InStr(1, w, v, 1) Then
                    ReDim Preserve myArray(0 To X)
                    myArray(X) = cell.Offset(0, 1).Value
                    X = X + 1
                End If
        End If
Next
End Sub

任何建议或帮助将不胜感激!

0 个答案:

没有答案