Я получаю следующую ошибку

Ошибка времени выполнения «13»:

Несоответствие типов

с кодом ниже. Пожалуйста помоги.

Sub test()
   ' With Range("A1:C10")
       ' .Value = ""true""
    ' End With
    If Range("h1:h10").Value = "TRUE" Then
       Cells("h, 1").Interior.Color = vbRed    
   End If
End Sub

1 ответ1

0

Если вы хотите проверить, содержит ли весь диапазон хотя бы один раз ячейку с текстом, вы можете использовать:

   if WorksheetFunction.CountA(Range("h1:h10")) = 0  then   
       Cells("h, 1").Interior.Color = vbRed   
   End If

Но если вы хотите проверить каждую ячейку и покрасить ее, если у нее есть текст, вы можете перебрать диапазон следующим образом:

For i = 1 To 10
    With Cells(i, 1)
        If .Value <> "" Then .Interior.Color = vbRed
    End With
Next i

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .