Я видел варианты этого вопроса, заданные ранее, но при попытке собрать решения вместе, чтобы получить результат, который я ищу, в итоге получается что-то, что просто не щелкает.
Я хочу просмотреть все ячейки в столбце A
, где они содержали формулу "CalcText ()".Если они содержат формулу, то они совпадают, если они содержат значение Z
.Если они все делают, то пользовательская функция сообщает «Соответствие», в противном случае «Нет соответствия».Мой код ниже:
Function IsAMatch() As String
Dim Cell As Range
'Look at each cell in the A column
For Each Cell In Range("A:A")
'Check if the cell does not contain the wanted text
If (InStr(0, "CalcText", Cell, vbTextCompare) > 0) Then
If (InStr(0, "Z", Cell.Value2, vbTextCompare) = 0) Then
IsAMatch = "No Match"
End If
End If
Next Cell
IsAMatch = "Match"
End Function
Я думаю, что я делаю цикл по каждой ячейке в столбце A
и проверяю, не содержит ли он требуемый текст.Однако результат функции равен #Value
, а не какой-либо из строк текстового результата.
ПРИМЕР:
Ячейка A1 содержит формулу CalcText()
, которая оценивается как Z
.