Excel 2016 Скопировать только условный формат цвета ячейки из диапазона (G4: G100) в (E4: E100) - PullRequest
0 голосов
/ 25 августа 2018

После полудня,

В моем бюджете есть выпадающий список из G4: G100 с условным форматированием для изменения цвета ячейки в соответствии с выпадающим текстом.

То, что я не могу показатьсделать, чтобы ячейки связи в диапазоне E4: E100 имели тот же цвет ячеек, что и в G4: G100?

IMG1

Я пытался использовать в VBA:

Sub Copy_Color()
    Dim iColor As Long
    Dim i As Long

    For i = 4 To 100
        iColor = Worksheets("Sheet15").Range("G" & i).Interior.Color
        Worksheets("Sheet15").Range("E" & i).Interior.Color = iColor
    Next
End Sub

Любая помощь будет оценена!

1 Ответ

0 голосов
/ 26 августа 2018

Я обновил это, чтобы, надеюсь, сделать параметры более понятными.

Опция 1: с помощью подпрограммы, которую вы должны вызывать вручную.Это отвечает на ваш вопрос буквально ...

Public Sub CopyColor()
    Range("G4:G100").Copy
    Range("E4:E100").PasteSpecial xlPasteFormats
End Sub

Вариант 2: (мой предпочтительный вариант для вас).Вы можете настроить условное форматирование из столбца G, чтобы включить столбец E в тот же условный формат.Выберите диапазоны G4: G100 и E4: E100 и создайте формат условия с вашими правилами и форматированием цвета, отметив, что вы используете $ в столбце G, чтобы формат условия всегда работал из этого столбца.Например:

=IF($G4="Bank",TRUE,FALSE) 

Вариант 3: Вы можете использовать следующий код, чтобы при каждом обновлении ячейки на листе она копировала форматирование из G4: G100 в E4:E100.

Private Sub Worksheet_Change(ByVal Target As Range)
    Application.EnableEvents = False
    Range("G4:G100").Copy
    Range("E4:E100").PasteSpecial xlPasteFormats
    Application.EnableEvents = True
End Sub

(я не уверен в названии вашего листа, но добавьте в свой лист вот так ...)

enter image description here

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