Kiểu tham chiếu R1C1

Kiểu tham chiếu R1C1
Ngoài ra chúng ta còn có thể chuyển kiểu tham chiếu từ dạng A1 sang dạng R1C1, kiểu tham chiếu R1C1 rất hữu ích cho việc tính toán vị trí dòng và cột trong VBA. Đối với kiểu R1C1, Excel ký hiệu “R” để chỉ dòng theo sau là số thứ tự dòng và ký hiệu "C" để chỉ cột theo sau là số thứ tự cột.


  • R: chỉ dòng
  • C: chỉ cột
  • Chỉ số sau R hay C nếu để trong móc vuông [ ] là tham chiếu tương đối
  • Chỉ số sau R hay C không để trong móc vuông [ ] là tham chiếu tuyệt đối
  • R (chính là R[0]) hay C (chính là C[0]) không có chỉ số theo sau là biểu thị cùng dòng hay cùng cột với ô hiện hành.





Để hiểu hơn về tham chiếu R1C1 xét các ví dụ sau:





Công thức trong bảng tính sử dụng tham chiếu R1C1



Giải thích công thức ô tại dòng 2 cột 5 (tương đương E2): =RC[-2]*RC[-1]
  • RC[-2] (tương đương C2)

o R: Cùng dòng ô hiện hành → dòng 2
o C[-2]: Dịch chuyển về bên trái ô chứa công thức hiện hành 2 cột → cột 3

  • RC[-1] (tương đương ô D2)

o R: Cùng dòng ô hiện hành → dòng 2
o C[-1]: Dịch chuyển về bên trái ô chứa công thức hiện hành 1 cột → cột 4

Giải thích công thức ô tại dòng 27 cột 2 (tương đương B27): 
=SUMIFS(R2C5:R21C5,R2C1:R21C1,RC1,R2C2:R21C2,R26C)


  • R2C5:R21C5: Vùng địa chỉ tuyệt đối từ ô có dòng 2 cột 5 đến ô dòng 21 cột 5 (tương đương $E$2:$E$21)
  • R2C1:R21C1: Vùng địa chỉ tuyệt đối từ ô có dòng 2 cột 1 đến ô dòng 21 cột 1 (tương đương $A$2:$A$21)
  • RC1: Địa chỉ hỗn hợp của ô có dòng cùng dòng ô chứa công thức và cột 1 (tương đương $A27)
  • R2C2:R21C2: Vùng địa chỉ tuyệt đối từ ô có dòng 2 cột 2 đến ô dòng 21 cột 2 (tương đương $B$2:$B$21)
  • R26C: Địa chỉ hỗn hợp của ô có dòng 26 và cùng cột với ô chứa công thức (tương đương B$26)



Tham chiếu R1C1 và Macro

Khi ghi macro, Excel mặc định sẽ sinh ra các tham chiếu dưới dạng R1C1 khi gán công thức vào ô.

Ví dụ: Ghi macro chèn công thức tính tổng cột “Thành tiền” của ví dụ trên thì Macro sinh ra như sau:

1
2
3
4
5
Sub Macro1()
    Range("E22").Select
    ActiveCell.FormulaR1C1 = "=SUM(R[-20]C:R[-1]C)"
    Range("E23").Select
End Sub


Ví dụ: Thủ tục chuyển đổi qua lại kiểu tham chiếu A1 và R1C1

1
2
3
4
5
6
7
Sub Shift_R1C1_A1()
    If Application.ReferenceStyle = xlR1C1 Then
        Application.ReferenceStyle = xlA1
    Else
        Application.ReferenceStyle = xlR1C1
    End If
End Sub



Tuỳ chọn để chuyển sang kiểu tham chiếu R1C1
Excel 2003 về trước: Tools | Options | General | Settings | chọn R1C1 reference style.




Excel 2007: Nút Office | Excel Options | Formulas | Working with formulas | chọn R1C1 reference style




Excel 2013: File | Options | Formulas | Working with formulas | chọn R1C1 reference style

Share on Google Plus