我一直在努力弄清楚这里出了什么问题。我有两个包含字符串值的列。我使用第三列在工作表中调用 UDF,但最终得到 #Value 并出现错误 - “公式中使用的值的数据类型错误”。
例如:
Col I Col J
File1 Y
File1 N
File2 Y
File3 N
我尝试调试它,输入值被很好地传递到函数变量中。我在VBA方面的知识有限,希望你们能帮助我解决这个问题。
工作表中调用的函数:
=FileCheck(I3,I3:J38)
代码:
Public Function FileCheck(V As Range, Q As Range) As String
Dim vtest As Variant
Dim i, j, stat As Integer
stat = 0
vtest = Q
For i = 1 To UBound(vtest)
If V = vtest(i, 1) And vtest(i, 2) = "N" Then
For j = 1 To UBound(vtest)
If V = vtest(j, 1) And vtest(j, 2) = "Y" Then
FileCheck = "Y"
stat = 1
End If
Next
If stat = 0 Then
FileCheck = "N"
End
Else: End
End If
ElseIf V = vtest(i, 1) And vtest(i, 2) = "Y" Then
FileCheck = "Y"
End If
Next
End Function