我有一张名为Vessel Reading 1的工作表。我想将单元格D4的值读入另一张工作表。 'Vessel Reading 1'!D4
正确地给了我价值。
但是,我希望能够获得最新的数字,而不仅仅是“船只阅读1”。例如。如果我有五张名为' Vessel Reading 1 to 5',我想阅读名为' Vessel Reading 5'的表格中的值。基本上,'Vessel Reading 1'!D4
应更改为'Vessel Reading N'!D4
,其中N是最新的工作表。
CONCATENATE("Vessel Reading ",RIGHT(RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))),1))
上面的表格给出了我想要的表格名称。例如。如果我在表5中,它会给我“船只阅读5”,如果我在表2中,它会给我“船只阅读2'”。
所以,很明显,大部分工作已经到位。可悲的是,当我使用
时'CONCATENATE("Vessel Reading ",RIGHT(RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))),1))'!D4
它会抛出错误。现在我不确定我在这个公式中缺少什么。
编辑:
基本上,我需要一种方法将concatenate的结果作为字符串来创建单元格引用。
答案 0 :(得分:1)
如果您将工作表名称的公式放在A1中,那么您可以使用此公式从该工作表中找出D4单元格的值。
=INDIRECT(CONCATENATE("'",A1,"'!D4"))
您可以使用您创建的代码替换上面公式中的A1,以找出工作表,并且所有代码都将采用单个公式。完整的公式看起来像
=INDIRECT(CONCATENATE("'",CONCATENATE("Vessel Reading ",RIGHT(RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1))),1)),"'!D4"))