我有两张工作簿.我想根据工作表2第二列中的值格式化工作表1第一列中的单元格背景颜色.
例如,如果sheet2,第6行,第2列的值为4,那么我希望第1页,第4行,第1列的背景颜色为绿色.如果第2页第2列中没有任何值引用第1页中的细分行,我想将其设置为无颜色.没有禁止在第2页的第2列中多次出现相同的值.如果您可以告诉我如果图2中指向表1中的行的最后一个值被删除,您可以告诉我如何取消设置颜色,这是值得称赞的.
我确信对于Excel向导来说这可能是微不足道的,但我很少有机会使用excel,当然没有时间成为它的黑带.任何人都可以提供建议,指示或快速公式来做到这一点?如果要实现一些复杂的VB代码,那就不值得了.
谢谢!
您也可以使用命名范围执行此操作,因此您不必将单元格从Sheet1复制到Sheet2:
定义一个命名范围,例如,Sheet1Vals
对于具有您想要基于条件的值的列.您可以使用Insert\Name\Define...
菜单项定义新的命名范围.输入您的名字,然后使用Refers to
框中的单元格浏览器选择您想要的范围内的单元格.如果范围随时间变化(添加或删除行),您可以使用此公式而不是显式选择单元格:
=OFFSET('SheetName'!$COL$ROW,0,0,COUNTA('SheetName'!$COL:$COL))
.
如果列具有标题行,则-1
在最后一个之前添加a )
.
定义命名范围,例如,Sheet2Vals
对于具有要有条件格式化的值的列.
使用"条件格式"对话框创建条件.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
然后,您可以使用格式画家将这些格式复制到其余单元格.