我正在尝试调试一个简单的 vba 函数,该函数返回给定的数组,但一旦到达空单元格就会停止:
Function Test2(source() As Variant) As Collection
Debug.Print "Hello"
Dim i As Integer
i = 1
Do While Not IsEmpty(source(i))
Test2.Add source(i).Value
Debug.Print source(i).Value
i = i + 1
Loop
End Function
例如,当我通过在单元格中写入将数组传递给此函数时,=Test2(A:A)
我得到一个#VALUE!
错误,并且没有看到任何打印到即时窗口的内容。
与如何使用工具来查找问题相比,我对找出此功能的问题不太感兴趣。为什么“TEST”没有打印到即时窗口,如果我的程序中有语法错误,为什么编译器没有设置断点?