【问题标题】:Excel code to link range cells' colour into anotherExcel代码将范围单元格的颜色链接到另一个
【发布时间】:2018-01-15 23:49:48
【问题描述】:

我正在构建一个住宅堆叠计划,其中每个单元格 = 单元类型,具有特定颜色的条件格式。 下面的 2 个表格反映了每个单位的面积和 $ 价值。

我需要将单元格的颜色反映到下表中。

我需要一个动态解决方案,并且希望避免使用 vba(因为我不精通),但如有必要会使用。提前致谢!

Find Image HERE

【问题讨论】:

  • 你的问题我不清楚。你能提供一个示例图片吗?
  • 静态很容易做到,只需复制格式即可。但是,这样做肯定需要 VBA,或者也将条件格式复制到第二个表中。
  • 可以使用条件格式来执行此操作,但查看电子表格会有所帮助,以便我可以提供进一步的建议。
  • @CMArg 我添加了图片 Luuklag,我需要动态:/ Rob Anthony,请看图片 :) 非常感谢大家!
  • @RobAnthony 长话短说,我需要第三张表格来模仿第二张表格的单元格颜色。

标签: excel colors formatting conditional vba


【解决方案1】:

如果您将颜色代码值 (B21:B26) 从 2 rooms 更改为 2(以匹配您的第二个表),则以下内容应该可以解决问题。基本上,这段代码没有使用条件格式。从条件格式中获取颜色可能有点费力和棘手(谷歌“excel vba 查找颜色条件格式”)。相反,当前代码读取颜色代码单元格中的颜色,并将其应用于其他两个范围。

Private Sub BckgndColor()
    Dim ColorCodeRange As Range
    Dim NoOfRooms As Range
    Dim CellColorIndex As Integer
    Dim c As Range
    Dim d As Object

    Set ColorCodeRange = Worksheets("Sheet1").Range("B21:B26")
    Set d = CreateObject("scripting.dictionary")
    'Add the pairs (value, color) to dictionary
    For Each c In ColorCodeRange.Cells
        d.Add c.Value, c.Interior.ColorIndex
    Next

    Set NoOfRooms = Worksheets("Sheet1").Range("M25:V36") 'Here the range of Table 2 (M25:V36 in your example)
    'Scan range, and assign color
    For Each c In NoOfRooms.Cells
        If d.Exists(c.Value) Then
            c.Interior.ColorIndex = d(c.Value)
            c.Offset(16, 0).Interior.ColorIndex = d(c.Value) 'If Table 3 is always 16 rows down, this shoud work
        End If
    Next

    Set d = Nothing
End Sub

【讨论】:

  • 感谢大家,问题已通过条件格式排序!
【解决方案2】:

像这样在第一个表上正常设置条件格式:

请注意,我的表格从单元格 C4 开始,但您的表格位于不同的位置,应进行​​相应调整。确保规则中的公式上没有 $ 符号,但在“适用于”部分中确实有它

现在将此格式复制并粘贴到第二个表中。

最后编辑条件格式中的公式,使它们指向 FIRST 表的起始单元格。它应该是这样的:

请注意,格式“适用于”第二个表,但在公式中指的是第一个表中的值。

结果是这样的:

如果需要,您可以对其他表重复此操作。

当您在 Excel 2003(!) 中工作时,请按照以下步骤操作:

  1. 选择第二个表格中的单元格。
  2. 在菜单中,选择格式 - 条件格式。
  3. 在条件格式框中,选择公式为
  4. 在文本框中,输入FIRST表的单元格引用(例如C4="4+"),不要输入任何$符号。
  5. 单击“格式”按钮并选择背景填充以匹配第一个表格中的填充。
  6. 通过单击添加>>按钮以相同的方式添加其他条件。

【讨论】:

  • 它仍然可以工作。我将在最后添加更新。
  • 我不知道条件和格式可以在不同的范围内。 +1
  • @SandroDabaghian 如果符合您的需要,请接受 Rob 的回答。这就是我们在这里说“谢谢”的方式......:)
  • @CMArg 感谢您让我知道。在这个论坛上还是新的 :)
【解决方案3】:

我在表 2 中给出了选项数据验证列表,而我通过列表选择选项时,单元格将发生变化。对于那个单元格,我也想从 sheet1 中的源表到 sheet2 获取颜色。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-01
    • 1970-01-01
    • 2014-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-16
    相关资源
    最近更新 更多