Установить цвет для нескольких столбцов в VBA Excel - PullRequest
0 голосов
/ 31 октября 2019

У меня есть некоторый рабочий код, основанный на этой ссылке:

https://software -solutions-online.com / excel-vba-column-fill-color /

, а также:

Значения цвета в Excel VBA

, которые выглядят следующим образом:

   Sub color()
   Sheets("10_WORLD_LIGHT_USE").Activate
   Range("CH900:CH1261").Interior.color = RGB(0, 255, 204)
   Range("CK900:CK1261").Interior.color = RGB(0, 255, 204)
   Range("CN900:CN1261").Interior.color = RGB(0, 255, 204)
   Range("CR900:CR1261").Interior.color = RGB(0, 255, 204)
   End Sub

хотя я убежден, что это можетбыть написано в гораздо более короткой форме. Столбец с одинаковым цветом повторяется каждые 3 столбца.

Какой краткий способ написания этой команды?

Ответы [ 2 ]

1 голос
/ 31 октября 2019

Если вы хотите цикл, вы можете сделать что-то вроде этого:

Sub color()

Dim i As Long

With Sheets("10_WORLD_LIGHT_USE") 'don't need to activate sheet
    For i = 0 To 2
        .Range("CH900:CH1261").Offset(, 3 * i).Interior.color = RGB(0, 255, 204)
    Next i
End With

End Sub
1 голос
/ 31 октября 2019
Sub color()

With Sheets("10_WORLD_LIGHT_USE")
    .Range("CH900:CH1261,CK900:CK1261,CN900:CN1261,CR900:CR1261").Interior.color = RGB(0, 255, 204)
End With

End Sub

Или:

Sub color()

With Sheets("10_WORLD_LIGHT_USE")
    Intersect(.Range("900:1261"), .Range("CH:CH,CK:CK,CN:CN,CR:CR")).Interior.color = RGB(0, 255, 204)
End With

End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...