Quay về mục lục VBA Macro
****Range là gì? Range và Cells khác nhau ra sao?
+ Đối tượng Range là đối tượng hay sử dụng nhất trong Excel
VBA.
+ Range dùng để thao tác trên 01 ô hay 01 nhóm ô Excel
Ví dụ:
Gán giá trị ô A1 là 10 => Gõ code: Range(“A1”).value = 10
Gán giá trị cho A1:C3 là 10 => Gõ code: Range(“A1:C3”).value
= 10
Các bạn chạy lệnh và xem kết quả nhé.
+ Cells là thuộc tính (properties) của Range dùng để chỉ tọa
độ 01 ô trong vùng Range.Nếu không ghi rõ vùng range thì mặc định VBA sẽ chọn
range=”toàn bộ ActiveSheet”=>tọa độ của Cells sẽ bắt đầu từ vị trí dòng 01 cột
01=>Cells(dòng,cột)
Ví dụ:
Gán giá trị 10 cho ô A2 => Gõ code: Cells(2,1).value = 10
Gán giá trị 10 cho ô đầu tiên trong vùng A1:C5=> Gõ code:
Range(“A1:C5”).Cells(1,1).value = 10
+ Do Cells có thuộc tính tọa độ là các số nên thường được
dùng cho các vòng lặp
****01 số cách sử dụng đối tượng Range****
01 – Gán giá trị
value
Ví dụ: Range(A1:C2).Value = 15
02 – Tạo vùng chọn
Select
Ví dụ: Range(A1:C2).Select
Chú ý: để thao tác câu lệnh Select các bạn phải thiết lập
Activate cho sheet chứa vùng đó(nếu không phải là ActiveSheet.
03 - Thiết lập 01
vùng bằng cú pháp Set
Ví dụ: gán giá trị 10 cho vùng A1:C5
Dim rng as Range
Set rng = Range(“A1:C5”)
rng.Value = 10
04 – Chọn nguyên dòng
nguyên cột
Ví dụ: Chọn nguyên dòng số 3
Dim rng as Range
Set rng = Range(“A1:C5”)
rng.Rows(3).Select
Chọn nguyên cột số 2
Dim rng as Range
Set rng = Range(“A1:C5”)
rng.Columns(2).Select
05 –
Copy/PasteSpecial
Ví dụ:
Range(“A1:C5”).Copy
Range(“E3”).PasteSpecial
06 – ClearContents
Ví dụ:
Range(“A1:C5”).ClearContents
07 – Đếm ô,dòng, cột
Ví dụ:
Đếm ô: MsgBox Range(“A1:C5”).Count
Đếm dòng: MsgBox Range(“A1:C5”).Rows.Count
Đếm cột: MsgBox Range(“A1:C5”).Columns.Count
Ngoài ra còn 01 số phương thức và thuộc tính khác hay xài
như:
CurrentRegion (chọn khối vùng lân cận), Offset (dịch chuyển),
EntireColumn (chọn nguyên cột), EntireRow (chọn nguyên dòng)
Nếu chưa hiểu các bạn xem video clip sau đây:
Không có nhận xét nào:
Đăng nhận xét