Vba集合在自定义函数中设置和检索集合中的值

时间:2015-03-30 09:25:24

标签: excel vba

我尝试在包含字符串“cgl”的名称和代码的单元格范围(单列)上循环。

我可以遍历范围并识别单元格,但我试图使用集合来存储名称和行号,以便我可以返回它。但我没有正确设置值,可能没有正确检索值(msg box命令在此点之后不起作用)。我正在使用excel 2007。

我按照其他q在线帮助中找到的示例,但使用集合的正确方法是什么?

Function DHNameRows(rng As Range, name)
' eg name = david

    Dim item As Range
    Dim staff As Collection
    Set staff = New Collection

    For Each item In rng
        found = InStr(item.Value, "CGL")
        If found = 0 Then
            'item value should equal david
            MsgBox item.Value
            staff.Add item.Value, item.Row
        End If
    Next
    MsgBox staff.item(name)
    DHNameRows = staff.item(name)

End Function

0 个答案:

没有答案