51

我有 2 个工作表:SummarySERVER-ONE.

A5摘要工作表的单元格中,我添加了 value SERVER-ONE

在它旁边的 cell 中B5,我想要一个公式,它使用 in 的值A5来显示G7同名工作表中的值 ( SERVER-ONE)。

我可以手动使用:

='SERVER-ONE'!G7

但是我希望这是动态的,因此我可以轻松添加更多工作表。

我毫无喜悦地尝试了显而易见的事情:

='A5'!G7

有什么建议么?

4

8 回答 8

97

你可以使用公式INDIRECT()

这基本上需要一个字符串并将其视为参考。在您的情况下,您将使用:

=INDIRECT("'"&A5&"'!G7")

双引号是为了说明里面是字符串,A5这里只作为参考。

于 2013-06-03T14:37:00.770 回答
12

你需要INDIRECT功能:

=INDIRECT("'"&A5&"'!G7")
于 2013-06-03T14:36:49.757 回答
5

不确定您是否解决了您的问题,但我发现这可以在拖动时增加行号。

= INDIRECT("'"&$A$5&"'!$G"&7+B1)

其中 B1 指的是一个索引号,从 0 开始。

因此,如果您复制并拖动索引单元格和具有间接公式的单元格,您将增加间接公式。您也可以使用 Index 函数创建一个更优雅的计数器。

希望这可以帮助。

于 2015-07-16T00:44:57.723 回答
5

这是一个使用 INDIRECT 的解决方案,如果您拖动公式,它将相应地从目标工作表中拾取不同的单元格。它使用 R1C1 表示法,并且不仅限于在 AZ 列上工作。

=INDIRECT("'"&$A$5&"'!R"&ROW()&"C"&COLUMN(),FALSE)

此版本从与放置公式的单元格对应的目标单元格中​​获取值。例如,如果您将公式放在“Summary”!B5 中,那么它将从“SERVER-ONE”!B5 中获取值,而不是原始问题中指定的“SERVER-ONE”!G7。但是在任何情况下,您都可以轻松地向行和列添加偏移量以实现所需的映射。

于 2017-01-31T09:50:30.200 回答
3

通过使用该ROW()函数,我可以垂直拖动这个公式。它也可以水平拖动,因为$之前没有D.

= INDIRECT("'"&D$2&"'!$B"&ROW())

我的布局将工作表名称作为列标题(B2C2D2等),并从B每个工作表中的 Column 映射多个行值。

于 2016-10-03T22:31:03.140 回答
2

INDIRECT 是您要使用的功能。像这样:

=INDIRECT("'"&A5&"'!G7")

使用 INDIRECT,您可以将公式构建为文本字符串。

于 2013-06-03T14:40:55.513 回答
1

猜猜@user3010492 对其进行了测试,但我将它与固定单元格 A5 --> $A$5 和 G7 的固定元素一起使用 --> $G7

=INDIRECT("'"&$A$5&"'!$G7")

如果将其括在括号中,也可以很好地嵌套在其他公式中。

于 2013-11-21T17:19:20.293 回答
0

这仅适用于 Z 列,但您可以水平和垂直拖动它。

=INDIRECT("'"&$D$2&"'!"&CHAR((COLUMN()+64))&ROW())
于 2016-12-05T19:58:14.577 回答