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

Cách dùng tham chiếu trong Macro Recorder (VBA)

Trong bài này chúng ta sẽ học cách sử dụng hai loại tham chiếu khi Recorder Macro, đó là tham chiếu tương đối và tham chiếu tuyệt đối.

Mặc định khi bạn Record một Macro thì đó là tham chiếu tuyệt đối (Absolute References). Tuy nhiên có một số trường hợp bạn phải sử dụng tham chiếu tương đối (Relative References) thì mới giải quyết được bài toán.

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.

Và sau đây mình sẽ giúp bạn phân biệt hai loại tham chiếu này khi record một macro trong Excel VBA.

* Lưu ý: Nếu bạn chưa biết cách sử dụng tính năng Record Macro thì hãy tham khảo bài viết Record Macro trong Excel nhé. Đây là điều bắt buộc bởi mình sẽ không giải thích quá nhiều các bước để record macro.

1. Tham chiếu tuyệt đối khi Record Macro

Tham chiếu tuyệt đối là nó sẽ tham chiếu cố định đến một ô trong Excel.

Bạn hãy thực hiện ví dụ dưới đây để hiểu rõ hơn nhé.

Bài toán: Hãy tạo một macro bằng công cụ Record Macro có chức năng nhập vào ba giá trị (Sales, Production, Logistics) vào 3 ô (B3, B4, B5). Yêu cầu là khi chạy macro thì luôn luôn áp dụng cho ba ô này.

1. Đầu tiên hãy qua tab Developer và click Record Macro.

2. Tiếp theo, hãy chọn ô B3 và nhập chữ "Sales" rồi nhấn Enter, lúc này ô B4 sẽ được chọn.

3. Nhập "Production" và nhấn Enter, lúc này ô B5 được chọn.

4. Nhập "Logistics" và nhấn Enter.

Kết quả là bạn sẽ có một bảng dữ liệu như sau:

recording in absolute mode png

5. Click vào Stop Recording nằm trong tab Developer.

6. Bạn hãy xóa dữ liệu đã nhập ở trên nhé.

7. Chọn một ô bất kì (giả sử mình chọn ô D3), sau đó chạy Macro vừa tạo thì kết quả là ba ô B3, B4, B5 nhận lại giá trị cũ.

recording in absolute mode png

Lý do là trình Record đang sử dụng tham chiếu cố định tuyệt đối đến 3 ô đó, nên dù bạn đang ở ô nào đi nữa thì macro vẫn tham chiếu đến ô mà nó đã được thiết lập.

2. Tham chiếu tương đối khi Record Macro

Tham chiếu tương đối là sẽ tham chiếu đến ô tỉ lệ với ô mà bạn đang chọn.

Yêu cầu: Quay lại bài toán ở phần 1. Mình muốn khi chạy macro thì 3 giá trị (Sales, Production, Logistics) sẽ được nhập vào 3 ô tính từ vị trí ô mà mình đang chọn chứ không phải cố định như vậy.

Đọc yêu cầu thôi ta sẽ nghĩ đến ngay là sẽ sử dụng tham chiếu tương đối để giải quyết.

1. Chọn Use Relative References nằm trong tab Developer. Đây là tùy chọn giúp Excel hiểu là sử dụng tham chiếu tương đối.

use relative references png

2. Chọn bất kì một ô nào (giả sử mình chọn ô B8)

3. Click vào Record Macro nằm trong tab Developer.

2. Tiếp theo, nhập chữ "Sales" rồi nhấn Enter, lúc này ô B9 sẽ được chọn.

3. Nhập "Production" và nhấn Enter, lúc này ô B10 được chọn.

4. Nhập "Logistics" và nhấn Enter.

Kết quả:

recording relative mode png

5. Click vào Stop Recording trong tab Developer.

6. Chọn một ô bất kì (giả sử mình chọn ô D4), sau đó chạy macro vừa record thì kết quả sẽ như sau:

recording in relative mode result png

Như vậy mà macro đã áp dụng cho ba ô D4, D5, D6. Tức nó tính từ ô mà mình đã chọn là B4 chứ không phải cố định như ở phần 1.

Qua bài này mình đã hướng dẫn xong cách sử dụng tham chiếu tương đối và tham chiếu tuyệt đối khi thực hiện tạo macro thông qua trình Macro Recorder. Bài này mình xin dừng tại đây, hẹn gặp lại bạn ở bài tiếp theo 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