1

我想做的是创建一个引用另一张纸的公式。我不想直接添加工作表的名称,而是希望能够将工作表名称作为变量。

我的公式如下:

=IF(B2="",(HLOOKUP($A$2,'Sheet 1'!$C$5:$AB$200,2)),(HLOOKUP($B$2,'Sheet 1'!$C$5:$AB$200,2)))

工作表 1 是此处静态引用的工作表,但单元格 A5 将是确定要查看哪个工作表的单元格。而不是说“表 1”,它需要类似于 =A5

我已阅读有关使用 INDIRECT 的信息,但是无法使其正常工作

=IF(B2="",(HLOOKUP($A$2,(INDIRECT(CONCATENATE("'",A5,"'"))!$C$5:$AB$200,2)),(HLOOKUP($B$2,(INDIRECT(CONCATENATE("'",A5,"'"))!$C$5:$AB$200,2)))

如果有人可以提供帮助,将不胜感激

4

2 回答 2

3

要使用Indirect,您需要将整个地址构建为字符串

例如

INDIRECT("'" & A5 & "'!$C$5:$AB$200")
于 2014-07-15T11:15:05.830 回答
1

sheet1:单元格 A5 = 55

sheet2:单元格 A5 = 125

sheet2:单元格 D2 = sheet1

sheet2:有单元格 F3 = INDIRECT("'" & D2 & "'!A5")

sheet2:现在有单元格 F3 = 55


现在复制sheet2

sheet2 的副本:更改 D2 = sheet2 的值

sheet2 的副本:现在单元格 F3 = 125


我花了一个小时才明白这一点。希望这对任何人都有帮助。

谢谢你。

于 2014-10-13T21:40:38.420 回答