Đối tượng Phạm vi, là đại diện của một ô (hoặc các ô) trên trang tính của bạn, là đối tượng quan trọng nhất của Excel VBA. Chương này giới thiệu tổng quan về các thuộc tính và phương thức của đối tượng Range. Thuộc tính là một cái gì đó mà một đối tượng có (chúng mô tả đối tượng), trong khi các phương thức thực hiện một cái gì đó (chúng thực hiện một hành động với một đối tượng).

Range Examples

Đặt liên kết: / vba-create-a-macro # command-button [command button] trên trang tính của bạn và thêm dòng mã sau:

Range("B3").Value = 2

Kết quả khi bạn bấm vào nút lệnh trên sheet:

Excel VBA Range Example

Mã:

Range("A1:A4").Value = 5

Kết quả:

Range Example

Mã:

Range("A1:A2,B3:C4").Value = 10

Kết quả:

Range Example

Lưu ý: để tham chiếu đến phạm vi được đặt tên

trong mã VBA Excel của bạn, hãy sử dụng dòng mã như sau:

Range("Prices").Value = 15

Ô

Thay vì Phạm vi, bạn cũng có thể sử dụng Ô. Sử dụng Cells đặc biệt hữu ích khi bạn muốn liên kết: / vba-loop [loop] qua các phạm vi.

Mã:

Cells(3, 2).Value = 2

Kết quả:

Cells in Excel VBA

Giải thích: Excel VBA nhập giá trị 2 vào ô ở giao điểm của hàng 3 và cột 2.

Mã:

Range(Cells(1, 1), Cells(4, 1)).Value = 5

Kết quả:

Cells

Khai báo một đối tượng Range

Bạn có thể khai báo một đối tượng Phạm vi bằng cách sử dụng các từ khóa Dim và Set.

Mã:

Dim example As Range

Set example = Range("A1:C4")

example.Value = 8

Kết quả:

Declare a Range Object in Excel VBA

Chọn

Một phương thức quan trọng của đối tượng Range là phương thức Chọn. Phương pháp Chọn chỉ đơn giản là chọn một phạm vi.

Mã:

Dim example As Range

Set example = Range("A1:C4")

example.Select

Kết quả:

Select Method

Lưu ý: để chọn các ô trên một trang tính khác, trước tiên bạn phải kích hoạt trang tính này. Ví dụ, các dòng mã sau đây chọn ô B7 trên trang tính thứ ba từ bên trái.

Worksheets(3).Activate

Worksheets(3).Range("B7").Select

Hàng

Thuộc tính Rows cung cấp quyền truy cập vào một hàng cụ thể của một dải ô.

Mã:

Dim example As Range

Set example = Range("A1:C4")

example.Rows(3).Select

Kết quả:

Rows Property

Lưu ý: viền chỉ để minh họa.

Các cột

Thuộc tính Columns cho phép truy cập vào một cột cụ thể của một dải ô.

Mã:

Dim example As Range

Set example = Range("A1:C4")

example.Columns(2).Select

Kết quả:

Columns Property

Lưu ý: viền chỉ để minh họa.

Sao chép / Dán

Phương pháp Sao chép và Dán được sử dụng để sao chép một dải ô và dán nó vào một nơi khác trên trang tính.

Mã:

Range("A1:A2").Select

Selection.Copy

Range("C3").Select

ActiveSheet.Paste

Kết quả:

Copy/Paste Method

Mặc dù điều này được cho phép trong Excel VBA, nhưng tốt hơn nhiều là sử dụng dòng mã bên dưới để làm chính xác như vậy.

Range("C3:C4").Value = Range("A1:A2").Value

Rõ ràng

Để xóa nội dung của một phạm vi Excel, bạn có thể sử dụng phương pháp ClearContents.

Range("A1").ClearContents

hoặc đơn giản là sử dụng:

Range("A1").Value = ""

Lưu ý: sử dụng phương pháp Xóa để xóa nội dung và định dạng của một dải ô.

Sử dụng phương pháp ClearFormats để chỉ xóa định dạng.

Đếm

Với thuộc tính Count, bạn có thể đếm số ô, hàng và cột của một phạm vi.

Count Property

Lưu ý: viền chỉ để minh họa.

Mã:

Dim example As Range

Set example = Range("A1:C4")

MsgBox example.Count

Kết quả:

Count Cells

Mã:

Dim example As Range

Set example = Range("A1:C4")

MsgBox example.Rows.Count

Kết quả:

Count Rows

Lưu ý: theo cách tương tự, bạn có thể đếm số cột của một phạm vi.