Excel代码链接范围单元格的颜色到另一个

我正在build立一个住宅的堆叠计划,其中每个单元=具有特定颜色的单元types给予条件格式。 每个单位下面的2个表格反映了一个平方米的大小和$价值。

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

我需要一个dynamic的解决scheme,宁愿避免vba(因为我不熟练),但将在必要时使用。 提前致谢!

在这里find图片

在第一个表格上设置条件格式,如下所示:

条件格式

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

现在复制并粘贴到第二个表上的格式。

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

第二个表格有条件的格式

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

结果是这样的:

最后结果

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

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

  1. select第二个表中的单元格。
  2. 在菜单中,select格式 – 条件格式。
  3. 在条件格式框中,select公式是
  4. 在文本框中inputFIRST表的单元格引用(例如C4 =“4+”),不要input任何$符号。
  5. 单击格式button并select背景填充以匹配第一个表格中的一个。
  6. 单击添加>>button,以相同的方式添加其他条件。

如果您将颜色代码值(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