跨Excel工作簿INDEX-MATCH函数匹配取值故障排查
问题分析与修正方案
你的公式存在两个关键错误:
- 文件路径格式错误:第一个INDEX引用里的
'[annual_leave].xlsx]percentage calc'格式有误,正确写法应为'[annual_leave.xlsx]percentage calc'(.xlsx需要放在方括号内部)。 - 工作簿引用错误:第二个MATCH里误写为
[WorkbookB.xlsx],但实际要匹配的列名在annual_leave.xlsx的第3行,需修正为对应工作簿。
修正后的可用公式:
=INDEX('[annual_leave.xlsx]percentage calc'!$C$4:$Z$1000, MATCH(A7, '[annual_leave.xlsx]percentage calc'!$B$4:$B$1000, 0), MATCH(C1, '[annual_leave.xlsx]percentage calc'!$C$3:$Z$3, 0))
实用注意事项:
- 若使用Excel 2019及更早版本,需确保
annual_leave.xlsx处于打开状态,否则公式会失效;Excel 365支持关闭源文件后读取数据,但首次使用需确认文件路径无误。 - 公式里的绝对引用(
$符号)已配置妥当,直接下拉C7单元格就能自动填充后续人员的数据。 - 后续如果需要扩展列范围(比如到AA列),只需把公式中的
$Z$1000和$Z$3替换成对应列号即可。
内容的提问来源于stack exchange,提问作者user2849976
相关产品推荐
相关产品推荐

