当数组中的列 Headers = 特定单元格时,查询或 ArrayFormula 到 return 列 1

Query or ArrayFormula to return Column 1 when Column Headers in an Array = specific cell

我这辈子都想不出一个搜索字符串来解决这个问题,如果已经完成,我深表歉意。

我有一个包含 4 个选项卡的预算工作簿:1 个用于 3 个部门,1 个用于从其他部门提取数据以让您并排比较部门。

这里有一个只有比较选项卡和 1 个短部门选项卡的示例版本:https://docs.google.com/spreadsheets/d/1KeJFG_fqKNNBxT5dSkSWjk_6t0CgMcp6_3sHE5NBoMo/edit?usp=sharing

在 'Projection Comparison' 你 select E1 和 E2 中的月份和年份,然后连接成 E3 中的日期。我需要根据那个日期从 'Department 1'!A:M 中提取数据。

我目前在 'Projection Comparison' 上使用静态合同名称列表,并使用索引+匹配从 'Department 1' 中提取与 E3 中的日期相匹配的预算预测数据。

然而,这让我的合同在几个月内都没有预算预测,我宁愿只列出有当月预测的合同。

我需要 'Projection Comparison'!B5:B9 填充 'Department 1'!A2:A6,但前提是 'Department 1'!B2:M6 列中有预算预测header 与 'Projection Comparison'!E3.

中的日期匹配

我还需要 C5:C9 从选项卡 'Department 1' 中填充所述预算预测,但同样,前提是它不是空白的。

我已经尝试了 Query、ArrayFormula、Filter、Index+Match 的几种组合,但我缺乏正确组合的专业知识。

帮忙?

删除B5:C10中的所有内容并在B5中使用:

=FILTER({'Department 1'!A2:A6, 
 FILTER('Department 1'!B2:6, 'Department 1'!B1:1=E3)}, 
 FILTER('Department 1'!B2:6, 'Department 1'!B1:1=E3)<>"")