【问题标题】:Excel 2016 Copy only conditional format cell color from range (G4:G100) to (E4:E100)Excel 2016 仅将条件格式单元格颜色从范围 (G4:G100) 复制到 (E4:E100)
【发布时间】:2019-01-31 17:12:55
【问题描述】:

下午,

我的预算表中有一个来自 G4:G100 的下拉列表,带有条件格式,可根据下拉列表中的文本更改单元格颜色。

我似乎无法将 E4:E100 范围内的单元格链接到与 G4:G100 中相同的单元格颜色?

我曾尝试在 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

任何帮助将不胜感激!

【问题讨论】:

  • 我没有得到真正的问题。但是,如果要获得条件格式颜色,则需要使用 Worksheets("Sheet15").Range("G" & i).DisplayFormat.Interior.Color
  • 我只想要 G4 到 G100 的颜色,通过条件格式选择要在 E4 到 E100 中复制的颜色
  • 只是颜色,因为这个范围 E4 到 E100 将包含数字

标签: excel vba conditional-formatting excel-2016


【解决方案1】:

我已对此进行了更新,希望能让选项更清晰。

选项 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

(我不确定您的工作表名称,但可以像这样添加到工作表中......)

【讨论】:

  • 我只是想要一个自动化流程
  • 嗨,约翰。我已经更新了我的答案。希望这在选项和每个提供的内容方面更清楚。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-13
  • 2020-10-19
  • 2013-10-28
  • 1970-01-01
  • 2021-06-13
  • 2014-04-09
  • 2023-01-28
相关资源
最近更新 更多