Я очень новичок в Excel VBA, и я не могу понять, как заставить это работать. У меня есть столбец (столбец K), с заголовком в K1. Я получаю эту таблицу каждый день, и у нее разное количество строк. Столбец K имеет номера от 0 до 100. Мне нужно выделить определенные строки определенных цветов в зависимости от значения в столбце K. Это то, что у меня есть до сих пор, но оно просто полностью опускается и делает каждый красный шрифт столбца. Мне нужно, чтобы он переместил k2 в последнюю ячейку K со значением и изменил цвет шрифта для каждой строки.Excel VBA - Loop, необходимый для столбца
Columns("K").Select
Dim firstCell As Integer
Dim finalCell As Integer
firstCell = Range("K2")
finalCell = Range("K65536").End(xlUp).Row
For i = firstCell To finalCell
If i > 5 Then
Rows(i).Select
With Selection.Font
.Color = RGB(255, 0, 0)
End With
ElseIf i = 4 Then
Rows(i).Select
With Selection.Font
.Color = RGB(226, 107, 10)
End With
ElseIf i = 3 Then
Rows(i).Select
With Selection.Font
.Color = RGB(0, 176, 80)
End With
ElseIf i = 2 Then
Rows(i).Select
With Selection.Font
.Color = RGB(0, 112, 192)
End With
ElseIf i = 1 Then
Rows(i).Select
With Selection.Font
.Color = RGB(112, 48, 160)
End With
End If
Next i
Две ссылки, чтобы вы начали. [FIRST] (http://stackoverflow.com/questions/11169445/error-finding-last-used-cell-in-vba) и [SECOND] (http://stackoverflow.com/questions/10714251/excel-macro -avoiding-using-select) –
Кстати, вы также можете использовать Autofilter для окраски ячеек. Вам не нужно проходить через все 100 или около того ячеек –
В этом случае с помощью «Case» легко написать код – HA560