已编辑,因为我的第一篇帖子太令人困惑了
我也把它精简到只剩核心部分
我有一本有 2 张工作表的工作簿。时间和事件。在时间中,我有日期 (A),延伸到未来,以及事件字段 (B):
在事件中,我有重复事件的日期(A)和描述(B)。
我想要做的是,如果 Times!A 中的日期和月份与 Events!A 中的日期和月份相匹配,则在 Times!B 中显示来自 Events!B 的事件描述
我在原始工作簿中有一个不同的单元格,我在其中查找公共假日并标记日期,但那是对日期的 1 对 1 查找和对信息的 vlookup。
我一直试图将其扭曲成这个重复的过程,但最终得到的只是错误的公式。
答案1
IFERROR
用 和 一起包装的数组(CSE)公式Helper Column
可以解决该问题:
怎么运行的:
创建辅助列:
Event Sheet's
在单元格中输入此公式AB2
:=IF(ISBLANK(Time!V2),"",DAY(Time!V2)&MONTH(Time!V2))
Event Sheet's
单元格中的公式AC2
:
=IF(ISBLANK(Y2),"",DAY(Y2)&MONTH(Y2))
Time Sheet's
单元格中的数组公式W2
:{=IFERROR(INDEX(Event!Z$2:Z$12,SMALL(IF(Event!AC$2:AC$12=Event!$AB2,ROW(Event!Z$2:Z$12)-MIN(ROW(Event!Z$2:Z$12))+1),COLUMNS(Event!$Z$2:Z2))),"")}
編輯:
OP 提出了一个很好的观点,即很少有日期像11/02/2020
和一样01/12/2020
会返回112
在辅助列中,这会使 Excel 产生混淆并产生错误的结果。
因此,为了避免这种情况,
在单元格中输入此公式
AB2:
=IF(ISBLANK(Time!V2),"",TEXT(DAY(Time!V2),"ddd")&MONTH(Time!V2))
在单元格中使用此
AC2:
=IF(ISBLANK(Y2),"",TEXT(DAY(Y2),"ddd")&MONTH(Y2))
注意:
公式W2
将保持不变。
注意:
W2
完成公式Ctrl+Shift+Enter& 向下填充。根据需要调整公式中的单元格引用。
为了整洁,稍后您可以隐藏辅助列。