У меня есть этот код:Почему это несоответствие типа?
Public Function MultiVLookup(MatchWith As String, TRange As Range, col_index_num As Integer)
If (MatchWith = "") Then
MultiVLookup = ""
Else
For Each cell In TRange
a1 = cell.Value
a2 = CStr(a1) 'FAILURE IN THIS LINE
b = CStr(MatchWith)
If (a2 = b) Then
x = x & cell.Offset(0, col_index_num).Value & ", "
End If
Next cell
If (x = "") Then
MultiVLookup = ""
Else
MultiVLookup = Left(x, Len(x) - 2)
End If
End If
End Function
и я называю это так:
L_CurrentService = MultiVLookup(L_CurrentCI, Sheets("Servicios").Columns("C"), 2)
Но он не в линии, отмеченной выше типа Рассогласуйте, и мне не удается найти, почему.
Почему я не могу так вызвать CStr()?
Какой тип a1? Вызывайте имя на нем: MsgBox TypeName (a1) – Rob