使用上一个日期名称的Excel单元格引用到其他工作簿

时间:2016-01-15 13:52:24

标签: excel excel-formula string-concatenation

我需要将当前工作表(每日日志)中的数据引用到前一天的日志(以显示过去一天的数据)。

我可以使用直接引用其他工作簿的固定格式执行此操作。但是我真的想让它自动引用前一天日志中的单元格。值得庆幸的是,文件名的格式很好“2016 01 January.xlsm”,所以使用公式引用它们应该不难。

我知道我可以使用以下方法构建显示前一天名称的单元格值:

=text(today()-1, "yyyy dd Mmmm") & ".xlsm"

但是,当我尝试在应该引用此工作表的单元格中使用它时,似乎我的连接被打破了:

='[TEXT(TODAY()-1, "yyyy dd Mmmm") & ".xlsm"]Readings'!$J$14

我可以轻松地在Matlab中调试连接,但遗憾的是我不在那个环境中,我似乎也不理解Excel的工作方式。

提前致谢! 本

1 个答案:

答案 0 :(得分:1)

您只需要使用INDIRECT命令添加公式。 INDIRECT告诉excel您没有明确指出某个特定位置,但是您想要动态计算一个位置,然后参考该计算点。假设您的文件名正确,这应该像以下一样简单:

=INDIRECT(TEXT(TODAY()-1, "'\[yyyy dd mmmm") & ".xlsm]Readings'!J14")

要测试它是否正确创建文件名,请考虑将串联公式放在不同的单元格中,然后使用INDIRECT引用该单元格。这将证实你没有拼写错误等等。

*由Jeeped强调编辑,现在正确计算文件名而不是硬编码作为明确的文本字符串。