我有 2 个工作表:Summary
和SERVER-ONE
.
在A5
摘要工作表的单元格中,我添加了 value SERVER-ONE
。
在它旁边的 cell 中B5
,我想要一个公式,它使用 in 的值A5
来显示G7
同名工作表中的值 ( SERVER-ONE
)。
我可以手动使用:
='SERVER-ONE'!G7
但是我希望这是动态的,因此我可以轻松添加更多工作表。
我毫无喜悦地尝试了显而易见的事情:
='A5'!G7
有什么建议么?
我有 2 个工作表:Summary
和SERVER-ONE
.
在A5
摘要工作表的单元格中,我添加了 value SERVER-ONE
。
在它旁边的 cell 中B5
,我想要一个公式,它使用 in 的值A5
来显示G7
同名工作表中的值 ( SERVER-ONE
)。
我可以手动使用:
='SERVER-ONE'!G7
但是我希望这是动态的,因此我可以轻松添加更多工作表。
我毫无喜悦地尝试了显而易见的事情:
='A5'!G7
有什么建议么?
你可以使用公式INDIRECT()
。
这基本上需要一个字符串并将其视为参考。在您的情况下,您将使用:
=INDIRECT("'"&A5&"'!G7")
双引号是为了说明里面是字符串,A5
这里只作为参考。
你需要INDIRECT
功能:
=INDIRECT("'"&A5&"'!G7")
不确定您是否解决了您的问题,但我发现这可以在拖动时增加行号。
= INDIRECT("'"&$A$5&"'!$G"&7+B1)
其中 B1 指的是一个索引号,从 0 开始。
因此,如果您复制并拖动索引单元格和具有间接公式的单元格,您将增加间接公式。您也可以使用 Index 函数创建一个更优雅的计数器。
希望这可以帮助。
这是一个使用 INDIRECT 的解决方案,如果您拖动公式,它将相应地从目标工作表中拾取不同的单元格。它使用 R1C1 表示法,并且不仅限于在 AZ 列上工作。
=INDIRECT("'"&$A$5&"'!R"&ROW()&"C"&COLUMN(),FALSE)
此版本从与放置公式的单元格对应的目标单元格中获取值。例如,如果您将公式放在“Summary”!B5 中,那么它将从“SERVER-ONE”!B5 中获取值,而不是原始问题中指定的“SERVER-ONE”!G7。但是在任何情况下,您都可以轻松地向行和列添加偏移量以实现所需的映射。
通过使用该ROW()
函数,我可以垂直拖动这个公式。它也可以水平拖动,因为$
之前没有D
.
= INDIRECT("'"&D$2&"'!$B"&ROW())
我的布局将工作表名称作为列标题(B2
、C2
、D2
等),并从B
每个工作表中的 Column 映射多个行值。
INDIRECT 是您要使用的功能。像这样:
=INDIRECT("'"&A5&"'!G7")
使用 INDIRECT,您可以将公式构建为文本字符串。
猜猜@user3010492 对其进行了测试,但我将它与固定单元格 A5 --> $A$5 和 G7 的固定元素一起使用 --> $G7
=INDIRECT("'"&$A$5&"'!$G7")
如果将其括在括号中,也可以很好地嵌套在其他公式中。
这仅适用于 Z 列,但您可以水平和垂直拖动它。
=INDIRECT("'"&$D$2&"'!"&CHAR((COLUMN()+64))&ROW())