Вам нужно Range("A:A")
, но было бы лучше, если бы оно было сокращено до ячеек в свойстве UsedRange рабочего листа.Кроме того, значение пустой ячейки считается нулевым, поэтому сначала следует проверить условие.
dim MyPlage As Range, cell as range
Set MyPlage = intersect(activesheet.Range("A:A"), activesheet.UsedRange)
For Each Cell In MyPlage
If isempty(cell) then
Cell.Interior.ColorIndex = 3 'red
elseIf Cell.Value < 1 Then
Cell.Interior.ColorIndex = 3 'red
ElseIf Cell.Value >= 1 Then
Cell.Interior.ColorIndex = 4 'green
end if
Next cell
Я отделил пустые ячейки и ячейки значением меньше единицы, потому что они предназначены для всех намерений иДля того же, в будущем вы можете выбрать другой цвет для одного из них.
Возможно, будет проще установить все в vbRed, а затем выборочно установить значения, большие или равные 1, как vbGreeen.
dim MyPlage As Range, cell as range
Set MyPlage = intersect(activesheet.Range("A:A"), activesheet.UsedRange)
MyPlage.Interior.ColorIndex = 3 'red
For Each Cell In MyPlage
If Cell.Value >= 1 Then
Cell.Interior.ColorIndex = 4 'green
end if
Next cell