我有一个表(xTable,3列:名称,开始,停止)。在另一张纸上,我有一个日历正在尝试制作。 A1行是日期。 A1列是名称。
我正在尝试将xTable中的开始日期与A1行中的日期进行比较。如果找到日期,请查看xTable的第一列,如果它等于A1列中人员的姓名,则返回true,否则返回false。
类似于:=INDEX($B$2:$AF$14,ROW(A2)-1,MATCH($B$16,$B$1:$AF$1,0))="x"
但是对于我的一生来说,我无法使其正常工作……我在想,也许是因为我有大约400行数据,但我不确定。任何帮助表示赞赏!另外,如果您知道vba解决方案,我总是可以使用它。但是我更喜欢尝试将其保留在公式中。但是乞g不应该挑剔;)
| 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |etc--->
Name1|____|____|____|____|____|____|____|____|____|____|____|____|
Name2|____|____|____|____|____|____|____|____|____|____|____|____|
Name3|____|____|____|____|____|____|____|____|____|____|____|____|
Name4|____|____|____|____|____|____|____|____|____|____|____|____|
Name5|____|____|____|____|____|____|____|____|____|____|____|____|
Name6|____|____|____|____|____|____|____|____|____|____|____|____|
Name7|____|____|____|____|____|____|____|____|____|____|____|____|
Name8|____|____|____|____|____|____|____|____|____|____|____|____|
Name9|____|____|____|____|____|____|____|____|____|____|____|____|
Name |Start|Stop |
Name1| 3 | 6 |
Name1| 1 | 12 |
Name7| 10 | 10 |
Name3| 21 | 30 |
Name1| 9 | 12 |
Name9| 7 | 15 |
Name9| 1 | 3 |
最佳答案
如果我理解正确,那么您想使用xTable中的开始日期(如果找到)用xcc填充日历,否则使用TRUE
填充日历?
您可以在单元格B2中使用此公式,并向下和向下填写:
=IF(COUNTIFS($A$13:$A$19,$A2,$B$13:$B$19,B$1*1)=0,FALSE,TRUE)
我正在使用
FALSE
,以防万一您将日期存储为A1行中的数字。否则,如果它们存储为日期但格式为B$1*1
(或等价格式),请改用dd
。该公式将使用
DAY(B$1)
计算具有表xTable的相应名称和开始日期的行的出现次数。如果未找到,它将返回0,这将生成COUNTIFS
。