Excel 2003相对列引用

时间:2016-01-21 14:57:26

标签: excel

我有一张工作表,我想在其中引用其他工作表中的数据。

='Value List'!Z$1

是我用来接收数据的公式。通常情况下,我可以向下拖动字段,它会更改列,但不会更改数字(因为$)。

它应该如何:

='Value List'!Z$1
='Value List'!AA$1
='Value List'!AB$1

它看起来如何:

='Value List'!Z$1
='Value List'!Z$1
='Value List'!Z$1

为什么不起作用?

2 个答案:

答案 0 :(得分:0)

试试这个,它可能对你有帮助。假设您将公式放在另一张表格的A1单元格中。

=OFFSET('Value List'!$Z$1,0,ROW()-ROW($A$1))

答案 1 :(得分:0)

对harun24hr的回答略有修改,使用INDEX代替OFFSET,因为OFFSET is a volatile function这可能会减慢重新计算工作表:

=INDEX('Value List'!$Z$1:$Z$65535,ROW()-ROW($A$1)+1)

此处$A$1是目标列表中第一个单元格的地址(注意+1OFFSET解决方案相比较)。当然,您可以在此处替换行的实际编号,但保留ROW函数意味着如果移动目标单元格或插入行或列,函数将不太可能中断。

65535是Excel 2003中可以拥有的最高行号;如果您愿意,可以将其更改为更合适的内容。