通常,在Excel公式中对单元格或区域的引用是A1引用样式,对于这种引用样式,大家已经非常熟悉了。在Excel中还存在另外一种引用样式,即R1C1引用样式,在R1C1引用样式中,行标和列标均为数字。该引用样式对单元格的绝对引用为“R+行标+C+列标”,其中“R”代表行,“C”代表列,如R2C3表示位于第2行、第3列的单元格。
??? R1C1引用样式有绝对有用和相对引用之分,如当前单元格为D5:
??? R[-1]C??????? 对当前单元格所在列中的上一行单元格的相对引用,即D4单元格。
??? R[5]C[2]????? 对当前单元格下面第5行、右面第2列的单元格的相对引用,即F10单元格。
??? R5C2????????? 对当前工作表的第5行、第2列的单元格的绝对引用,相当于$B$5。
??? R[-1]???????? 对当前单元格上面一行区域的相对引用,相当于4:4。
??? R???????????? 对当前行的绝对引用,相当于$5:$5
??? 按F4键可以在绝对引用和相对引用之间转换。如D5单元格的公式中包含R1C1引用样式“R5C2”,在编辑栏中选择公式中的“R5C2”,连续按F4键将依次转化为:R5C[-2]、RC2、RC[-2]。??
??? 在宏代码中,R1C1引用样式对于计算行和列的位置很方便。在录制宏的时候,代码中有时会出现R1C1样式。例如下面是在Excel 2007中录制的宏代码,其作用是在A16单元格中,用SUM函数对A1:A15单元格进行求和。
??? Sub Macro1()
?????????? Range("A16").Select
?????????? ActiveCell.FormulaR1C1 = "=SUM(R[-15]C:R[-1]C)"
?????????? Range("A17").Select
??? End Sub
????可以通过下面的设置在A1引用样式和R1C1引用样式之间转换:
??? 在Excel 2003中,单击菜单“工具→选项”,在弹出的“选项”对话框中,选择“常规”选项卡,勾选“R1C1引用样式”,将变为R1C1引用样式。
???
??? 在Excel 2007中,单击“Office按钮→Excel选项→公式”,在“使用公式”区域中,勾选“R1C1引用样式”,将更改为R1C1引用样式。
???
……