如何在INDEX函数数组参数中用单元格引用替换硬编码年份(禁用INDIRECT)
问题:用单元格引用自动更新跨工作表引用的年份(无需INDIRECT函数)
需求说明
我有一个名为Key Numbers的工作表,需引用外部文件中的*[Credit Cards 2023]KeyNum*工作表。希望将引用路径里的年份替换为单元格$A$2的引用值,实现年份自动更新,避免每年手动修改文件名。但尝试用INDEX拼接路径时返回#VALUE!,且不能使用INDIRECT函数——因为需要源工作表未打开时公式仍能正常生效。
无效公式尝试
=INDEX("'F:\DeptFolders\Accounting\%Accounting read\%Accounting Staff\Credit Cards\[Credit Cards "&$A$2&".xlsx]KeyNum'!$C$2:$M$14",MONTH($A$1)+1,3)
当前有效但硬编码的公式
以下公式能正确返回对应值(B3返回123,B4返回500),但年份为硬编码,需替换为$A$2的引用:
- B3(Visa):
=INDEX('F:\DeptFolders\Accounting\%Accounting read\%Accounting Staff\Credit Cards[Credit Cards 2023.xlsx]KeyNum'!$C$2:$M$14,MONTH($A$1)+1,3) - B4(MasterCard):
=INDEX('F:\DeptFolders\Accounting\%Accounting read\%Accounting Staff\Credit Cards[Credit Cards 2023.xlsx]KeyNum'!$C$2:$M$14,MONTH($A$1)+1,4)
相关工作表结构
Key Numbers工作表
| A | B | |
|---|---|---|
| 1 | Jan | |
| 2 | 2023 | |
| 3 | Visa | =INDEX('F:\DeptFolders\Accounting%Accounting read%Accounting Staff\Credit Cards[Credit Cards 2023.xlsx]KeyNum'!$C$2:$M$14,MONTH($A$1)+1,3) |
| 4 | MasterCard | =INDEX('F:\DeptFolders\Accounting%Accounting read%Accounting Staff\Credit Cards[Credit Cards 2023.xlsx]KeyNum'!$C$2:$M$14,MONTH($A$1)+1,4) |
[Credit Cards 2023]KeyNum工作表
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | Mo | Month | Visa | MasterCard | ||
| 3 | 1 | January | 123 | 500 |
内容的提问来源于stack exchange,提问作者WolfieeifloW
相关产品推荐
相关产品推荐

