在Excel公式中使用单元格值作为文件名

bvuwiixz  于 2023-02-14  发布在  其他
关注(0)|答案(2)|浏览(335)
    • bounty将在5天后过期**。此问题的答案可获得+50声望奖励。Schming正在寻找此问题的更详细答案:这是一个看起来应该很容易的问题,但我真的很难。我已经尝试了许多不同的解决方案,但没有一个是我需要的工作。任何帮助将是非常感谢。

我试图创建一个公式,该公式将引用另一个工作簿中不同文件夹中的单元格。我遇到的问题是使用单元格值代替文件名。
='C:\Users\Damien\Documents\Personal\Coffee\Workcards\[UGAG003.xlsx]Checklist'!$B$4
在上面的代码中,我想用当前工作簿中单元格B3的值替换UWEG003,并返回UGAG003.xlsx中单元格$B$4的值。我想使用单元格引用,因为我需要自动填充整列。实际上,我想得到的是:
='C:\Users\Damien\Documents\Personal\Coffee\Workcards\[ & $B3 & .xlsx]Checklist'!$B$4
这样我就可以把它拖到整个列中。
我希望这次我说得更清楚...
谢谢你的帮助。
我试过了...
=INDIRECT("'C:\Users\Damien\Documents\Personal\Coffee\Workcards\[" & $B13 & ".xlsx]Checklist'!$B$4")
而且它工作(某种程度上)。但是,它只在文档打开时工作。我如何使它可见,而不管文档是否打开?

n3h0vuf2

n3h0vuf21#

INDIRECT()函数在这里不起作用,因为:
我需要它即使在其他工作表未打开时也可见
如果你真的确定将工作簿名称放在单元格中以供参考是最好的方法--我建议使用parameter query

6pp0gazn

6pp0gazn2#

我建议使用powerquery,就像ttobe说的那样。你没有展示太多,所以我也不会展示太多,但是我会猜测你有什么。看看an example的这个。
您当前的工作表包含一个带有列的表,列中的一个值为“工时”。请将此(所有列)数据转换为表(ctrl + t)。在数据下,您需要从表/区域获取并转换。这是一个您可以加载和关闭的表。
返回到获取数据〉从文件现在选择文件,您需要对[UWEG002.xlsx]检查表执行相同操作。
接下来,您将把这些表合并在一起,然后在power query中展开所需的列。

相关问题