2010-05-04 102 views
0

当一个“在excel中正确填充”时,列名更新Excel:填充右侧时递增行号

例如,

第一小区 是 = A2

如果我填写右侧的下一个单元格将是= B2

但而不是列递增我要递增的行数

所以第一小区是 = A2

在其右边的小区被 = A3

我该怎么做?

+0

我结束了使用VLOOKUPTABLE,但会尝试下面,让你们知道。 – soldieraman 2010-05-15 04:03:27

回答

0

您可以使用INDIRECT函数执行此操作。假设我们要在单元格B1,C1,D1 ...这应该引用A2,A3,A4的公式......在单元格B2开始,我们可以输入:

=INDIRECT("R[" & COLUMN(RC)-1 & "]C1", FALSE) 

在B2单元格,这将作为渲染:

=INDIRECT("R[1]C1", FALSE) 

在这种情况下,我使用的是R1C1格式。 INDIRECT函数的第二个参数告诉函数使用R1C1格式。该函数本身(再次在单元格B2中)说:“给我单元格中的一行,第一列”。在原始公式中,通过将当前列号的行值作为基础,它会在您填写正确的时候将公式更新为新行。

现在,如果您问是否有方法使用GUI来完成此操作,比如说使用带鼠标的填充框,则答案是否定的。无法使用GUI转置填充。

+0

对不起,我无法将'''= COLUMN(RC)''接受为有效公式(Excel 2011 for Mac),因此第一个公式失败。 – Orwellophile 2014-06-30 14:52:03

+0

@Orwellophile - 即使在Mac *上也可以使用,如果您启用R1C1参考样式*。 – Thomas 2014-07-01 15:18:48

+0

以及如何做到这一点(并保存在电子表格中,以便下一个用户使用它时可以使用)? – Orwellophile 2014-10-15 13:34:49

3

如果你把第一个公式中的B2,然后

=OFFSET($A$2,COLUMN()-2,0) 

-2部分是因为我们在B列开始,你需要改变它,你实际上在开始任何列使第二个参数等于零。