根据另一个工作表和单元格中的值格式化单元格颜色

DCo*_*kie 14 excel

我有两张工作簿.我想根据工作表2第二列中的值格式化工作表1第一列中的单元格背景颜色.

例如,如果sheet2,第6行,第2列的值为4,那么我希望第1页,第4行,第1列的背景颜色为绿色.如果第2页第2列中没有任何值引用第1页中的细分行,我想将其设置为无颜色.没有禁止在第2页的第2列中多次出现相同的值.如果您可以告诉我如果图2中指向表1中的行的最后一个值被删除,您可以告诉我如何取消设置颜色,这是值得称赞的.

我确信对于Excel向导来说这可能是微不足道的,但我很少有机会使用excel,当然没有时间成为它的黑带.任何人都可以提供建议,指示或快速公式来做到这一点?如果要实现一些复杂的VB代码,那就不值得了.

谢谢!

Pat*_*uff 5

您也可以使用命名范围执行此操作,因此您不必将单元格从Sheet1复制到Sheet2:

  1. 定义一个命名范围,例如,Sheet1Vals对于具有您想要基于条件的值的列.您可以使用Insert\Name\Define...菜单项定义新的命名范围.输入您的名字,然后使用Refers to框中的单元格浏览器选择您想要的范围内的单元格.如果范围随时间变化(添加或删除行),您可以使用此公式而不是显式选择单元格:

    =OFFSET('SheetName'!$COL$ROW,0,0,COUNTA('SheetName'!$COL:$COL)).

    如果列具有标题行,则-1在最后一个之前添加a ).

  2. 定义命名范围,例如,Sheet2Vals对于具有要有条件格式化的值的列.

  3. 使用"条件格式"对话框创建条件.Formula Is在下拉列表中指定,然后将其放入公式:

    =INDEX(Sheet1Vals, MATCH([FirstCellInRange],Sheet2Vals))=[Condition]

    [FirstCellInRange]您要格式化的单元格的地址在哪里,是[Condition]您检查的值.

例如,如果我在Sheet1中的条件具有值1,2并且3我正在格式化的列B是Sheet2中的列,则我的条件格式将类似于:

=INDEX(Sheet1Vals, MATCH(B1,Sheet2Vals))=1
=INDEX(Sheet1Vals, MATCH(B1,Sheet2Vals))=2
=INDEX(Sheet1Vals, MATCH(B1,Sheet2Vals))=3
Run Code Online (Sandbox Code Playgroud)

然后,您可以使用格式画家将这些格式复制到其余单元格.


msk*_*her 3

以下是我在 Excel 2003 中使用条件格式完成此操作的方法。

要将条件格式应用于Sheet1使用来自 的值Sheet2,您需要将这些值镜像到Sheet1

创建 Sheet2、Sheet 1 中 B 列的镜像

  1. Sheet1
  2. 右键单击 A 列标题并选择“插入”来插入新列。
  3. 在A1中输入以下公式:

    =IF(ISBLANK(Sheet2!B1),"",Sheet2!B1)

  4. A1右键单击它并选择“ ”进行复制Copy
  5. A右键单击列标题并选择“ ”,将公式粘贴到列中Paste

Sheet1, 列现在应该完全反映, 列A中的值。Sheet2B

(注意:如果您不喜欢将其放在“column”中,将其放在“column”或其他任何地方A也同样有效。)Z

应用条件格式

  1. 呆着Sheet1
  2. B通过左键单击列标题来选择列。
  3. 选择菜单项Format > Conditional Formatting...
  4. 更改Condition 1为“ Formula is”并输入以下公式:

    =MATCH(B1,$A:$A,0)

  5. 单击Format...按钮并选择绿色背景。

您现在应该看到绿色背景应用于 中的匹配单元格Sheet1

隐藏镜柱

  1. 呆着Sheet1
  2. 右键单击列标题A并选择“ Hide”。

Sheet1每当有任何更改时,它都会自动更新Sheet2