在 Excel 2007 中,我使用以下公式来引用同一工作簿中其他工作表中的单元格:
=INDIRECT($B$2&"!A9")
B2 包含包含目标单元格的工作表的名称(我想把它变成一个模板,所以我没有在公式中输入名称)。该公式有效,但我想在多行(A10、A11、A12 [...] A1000)上使用相同的公式。我在多行上使用相同的代码,但具有不同的字段(B9、C9 等),具有各种不同的内容类型(数据、数字、文本)。
该公式的另一个版本如下:
='Worksheetname'!A9
但同样,这需要对工作表的名称进行硬编码,这对我来说是不可取的。
由于行的数量庞大,手动编辑不是一种选择:有没有办法改变这个公式,以便我可以轻松地在多行上使用它?最好不使用 VBA,但这不是必需的。
最佳答案
如果您的记录位于两个工作表中的相同单元格中,则可以使用以下内容:
=INDIRECT($B$2&"!"&ADDRESS(ROW();COLUMN()))
如果现在,那么您可以使用给定的 轻松抵消它们地址 功能
附言请注意,使用 INDIRECT 函数会降低工作簿的计算性能(很少有函数可以,但如果您有 10,000 个函数,那么您可能会看到一些延迟)
关于Excel 2007 在多行上使用间接引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24159503/