通常,在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引用樣式。