MACRO
EXCEL OBJECT
VBA BASIC
VBA FORM
BÀI TẬP
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Tìm hiểu thuộc tính FormulaR1C1 trong VBA

Trong bài này mình sẽ giải thích thuộc tính FormulaR1C1 trong VBA, đây là thuộc tính mà bạn sẽ thấy khi sử dụng tính năng Record Macro.

Trong VBA có thuộc tính Formula dùng để tạo công thức rồi, nhưng tại sao lại xuất hiện thêm thuộc tính FormulaR1C1? Điều này dễ hiểu bởi tính năng Record Macro không đủ thông minh như con người để đưa ra công thức chuẩn, nó sẽ dựa vào một quy luật khác và dùng FormulaR1C1 thay thế cho Formula.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

* Lưu ý: Bạn phải đọc hai bài dưới đây trước khi xem bài này nhé.

Ta sẽ làm từng bước để các bạn dễ hiểu hơn nhé.

I. Formula A1 Style

Tạo một command button trong worksheet mà bạn đang sử dụng, sau đó nhập giá trị cho ô B3 = 2. Cuối cùng nhập công thức sau vào sự kiện click của button đó.

Range("D4").Formula = "=B3*10"

Khi bạn click vào button thì kết quả sẽ như sau:

A1 style png

Rất dể hiểu, bởi công thức mà ta gắn vào rất giống với công thức Excel mà ta đã học ở series Excel căn bản.

Và cách sử dụng công thức kiểu này ta gọi là A1 Style.

II. Formula R1C1 - tham chiếu tương đối

Vẫn là bài toán ở phần 1, hãy thay đổi công thức cho sự kiện click vào button thành:

Range("D4").FormulaR1C1 = "=R3C2*10"

Lưu lại và click vào button thì bạn sẽ nhận kết quả:

R1C1 style png

Kết quả vẫn như nhau nhưng công thức thì lại khác.

Giải thích:

  • Công thức R3C2 chính là ô nằm ở Row 3 và Cột 2 => chính là ô B3
  • Style này là tham tương đối nên nhìn vào công thức bạn sẽ thấy có ký hiệu $ đằng trước ($B$3).

Nếu quay lại bài tham chiếu khi record macro thì nó chính là tùy chọn Use Relative References.

use relative references png

3. Formula R[1]C[1] - Tham chiếu tuyệt đối

Công thức này nó sẽ tính từ vị trí của ô đang chạy công thức tiến tới hoặc lùi bao nhiêu ô tùy vào giá trị mà ta truyền vào, điểm tiếp giáp chính là vị trí tham chiếu.

  • R[1]C[1] => Nhảy xuống 1 row và tiến tới 1 column
  • R[-1]C[-1] => Nhảy lên 1 row và lùi 1 column

Xét đến ví dụ ở trên thì ta phân tích như sau: Ô đang chọn là ô D4, ô cần tham chiếu là ô B3 nên:

  • Nhảy lên 1 row => R[-1]
  • Lùi 2 column => C[-2]
  • => Kéte quả là R[-1]C[-2]

Bạn hãy đổi lại công thức ở macro như sau:

Range("D4").FormulaR1C1 = "=R[-1]C[-2]*10"

Chạy macro thì kết quả sẽ như sau:

R 5B1 5DC 5B1 5D style png

Giải thích: Vì là tham chiếu tuyệt đối nên công thức không có ký tự đô la $.

Qua bài này thì ta thấy macro sẽ dựa vào công thức của FormulaR1C1 để nhận biết đang là tham chiếu tương đối hay tuyệt đối.

Như vậy là mình đã giải thích được ý nghĩa của hai thuộc tính Formula và FormulaR1C1 trong Excel. Chúc bạn học tốt nhé.

Cùng chuyên mục:

Cách chèn link ảnh vào Excel trên máy tính

Cách chèn link ảnh vào Excel trên máy tính

Ngoài ra, bài viết còn hướng dẫn cách chèn link ảnh trực tuyến hàng loạt…

Cách tách và gộp ô trong Excel

Cách tách và gộp ô trong Excel

Trong bảng tính Microsoft Excel, có thể sẽ có lúc các bạn cần tách ô…

Hàm MONTH() trong Excel

Hàm MONTH() trong Excel

Cách dùng hàm MONTH() trong Excel

Hàm YEAR () trong Excel

Hàm YEAR () trong Excel

Cách dùng hàm YEAR () trong Excel

Hàm HLOOKUP() trong Excel

Hàm HLOOKUP() trong Excel

Cách dùng hàm HLOOKUP() trong Excel

Hàm VLOOKUP() trong Excel

Hàm VLOOKUP() trong Excel

Cách dùng hàm VLOOKUP() trong Excel

Hàm LOOKUP() trong Excel

Hàm LOOKUP() trong Excel

Cách dùng hàm LOOKUP() trong Excel

Hàm ABS() trong Excel

Hàm ABS() trong Excel

Cách dùng hàm ABS() trong Excel

Hàm SUM() trong Excel

Hàm SUM() trong Excel

Cách dùng hàm SUM() trong Excel

Hàm SQRT() trong Excel

Hàm SQRT() trong Excel

Cách dùng hàm SQRT() trong Excel

Hàm MOD() trong Excel

Hàm MOD() trong Excel

Cách dùng hàm MOD() trong Excel

Hàm SUMIF() trong Excel

Hàm SUMIF() trong Excel

Cách dùng hàm SUMIF() trong Excel

Hàm SUBTOTAL() trong Excel

Hàm SUBTOTAL() trong Excel

Cách dùng hàm SUBTOTAL() trong Excel

Hàm ROUND() trong Excel

Hàm ROUND() trong Excel

Cách dùng hàm ROUND() trong Excel

Hàm SUMPRODUCT() trong Excel

Hàm SUMPRODUCT() trong Excel

Cách dùng hàm SUMPRODUCT() trong Excel

Hàm COUNT() trong Excel

Hàm COUNT() trong Excel

Cách dùng hàm COUNT() trong Excel

Hàm COUNTA() trong Excel

Hàm COUNTA() trong Excel

Cách dùng hàm COUNTA() trong Excel

Hàm COUNTBLANK() trong Excel

Hàm COUNTBLANK() trong Excel

Cách dùng hàm COUNTBLANK() trong Excel

Hàm MAX() trong Excel

Hàm MAX() trong Excel

Cách dùng hàm MAX() trong Excel

Hàm MIN() trong Excel

Hàm MIN() trong Excel

Cách dùng hàm MIN() trong Excel

Top