我正在使用条件格式突出显示日历中每个员工休假日期的日期,该条件格式是完美的,但我想要而不是突出显示日期前面提到的姓名显示在日历中。
= SUMPRODUCT((B3< = $ I $ 19:$ I $ 150)*(B3> = $ E $ 19:$ E $ 150))= 1
我想在日历中显示名称而不是绿色突出显示。 公式或VBA;什么都可以接受。
答案 0 :(得分:2)
在B3中提出这个:
=IFERROR(INDEX($A$20:$A$151,MATCH(1,IF(DATE($D$1,ROWS($A$3:$A3),B$2)>=$E$20:$E$151,IF(DATE($D$1,ROWS($A$3:$A3),B$2)<=$I$20:$I$151,1)),0)),"")
这是一个数组公式,必须使用Ctrl-Shift-Enter确认。然后复制并横跨。
如果仅在假期的第一天使用该名称,则更简单的INDEX / MATCH功能对就足够了。
在B3中,
=IFERROR(INDEX($A$20:$A$150, MATCH(DATE(YEAR($A3), MONTH($A3), B$2), $E$20:$E$150, 0)), "")
向右和向下填充。
注意:
如果存在重叠,这些只返回名字。
根据您的本地信息,您可能需要将分隔符从,
更改为;
。
如果您仍想要条件格式,请将条件格式公式更改为:
=B3<>""