Computer >> Hướng Dẫn Máy Tính >  >> Phần Mềm >> Office

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Bảng (Table) là một trong những đối tượng quan trọng và phổ biến nhất chúng ta dùng khi làm việc với VBA trong Excel. Trong bài viết này, tôi sẽ chỉ cho bạn cách sử dụng Bảng Excel với VBA.

9 Cách Sử Dụng Bảng Excel với VBA

Một bảng là kiểu bộ dữ liệu đặc biệt trong Excel nơi hàng đầu chứa tiêu đề.

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Trong VBA, nó thuộc danh mục ListObject. Đây là các cách bạn có thể dùng Bảng Excel trong VBA.

1. Tạo Bảng với VBA trong Excel

Trước hết, học cách tạo Bảng với VBA trong Excel.

Để tạo Bảng với VBA trong Excel, trước hết khai báo Bảng là ListObject.

Sau đó chèn Bảng vào phạm vi mong muốn.

Dim Table1 as ListObject 
Set Table1 = ActiveSheet.ListObjects.Add(xlSrcRange, Range("B4:D13"), , xlYes)
[Ở đây Table1 là tên Bảng trong VBA và B4:D13 là phạm vi trong trang tính hoạt động nơi muốn bảng. Bạn dùng bất cứ thứ gì thích.]

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Chạy mã này. Nó tạo Bảng trong phạm vi B4:D13 trang tính hoạt động.

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Nay nếu muốn, có thể đổi tên bảng thành bất cứ thứ gì thích.

Table1.Name = "MyTable"

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Nó đổi tên bảng thành MyTable.

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Đọc thêm: Tạo Bảng trong Excel bằng Phím tắt

2. Tham chiếu đến Bảng Excel với VBA

Chúng ta đã học tạo Bảng với VBA trong Excel.

Bây giờ để tham chiếu Bảng đã tạo trong Excel, trước hết khai báo Bảng là ListObject.

Sau đó tham chiếu Bảng với tên có sẵn trong Excel.

Dim Table1 As ListObject 
Set Table1 = ActiveSheet.ListObjects("MyTable")

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Nó tham chiếu bảng "MyTable" trong Excel với tên Table1.

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Đọc thêm: Cách Sử dụng Tham chiếu Bảng Excel

3. Nhập Giá Trị vào Bảng với VBA trong Excel

Để nhập giá trị vào Bảng, trước hết tham chiếu Bảng.

Sau đó nhập giá trị vào ô dùng thuộc tính Range.Cells của VBA.

Dim Table1 As ListObject 
Set Table1 = ActiveSheet.ListObjects("MyTable") 
Table1.Range.Cells(2, 1) = "A Tale of Two Cities"

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Chạy mã này. Nó nhập chuỗi "A Tale of Two Cities" vào hàng 2 cột 1 của bảng MyTable trang tính hoạt động.

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

4. Chèn Hàng và Cột vào Bảng với VBA trong Excel

Để chèn hàng hoặc cột vào Bảng với VBA, trước hết tham chiếu Bảng.

Sau đó để thêm hàng chèn thuộc tính ListRows.Add.

Dim Table1 As ListObject 
Set Table1 = ActiveSheet.ListObjects("MyTable") 
Table1.ListRows.Add

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Nó thêm hàng mới vào cuối bảng MyTable.

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Hoặc để thêm cột, chèn thuộc tính ListColumns.Add.

Dim Table1 As ListObject 
Set Table1 = ActiveSheet.ListObjects("MyTable") 
Table1.ListColumns.Add

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Nó thêm cột mới bên phải bảng MyTable.

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Lại, để thêm hàng hoặc cột tại vị trí cụ thể của Bảng, chỉ định vị trí trong thuộc tính ListRows.Add hoặc ListColumns.Add.

Dim Table1 As ListObject 
Set Table1 = ActiveSheet.ListObjects("MyTable") 
Table1.ListRows.Add (4)

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Nó thêm hàng mới làm hàng 4 của bảng MyTable.

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Tương tự cho thêm cột mới.

Đọc thêm: Cách Chèn hoặc Xóa Hàng và Cột từ Bảng Excel

5. Đọc Dữ liệu từ Bảng với VBA

Để đọc dữ liệu từ bảng với VBA, dùng thuộc tính Range.Cells của VBA.

Dim Table1 As ListObject 
Set Table1 = ActiveSheet.ListObjects("MyTable") 
MsgBox Table1.Range.Cells(3, 1)

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Chạy mã, nó hiển thị giá trị từ hàng 3 cột 1 của bảng MyTable. Đó là The Forty Rules of Love.

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Bài đọc tương tự

  • VBA Làm mới Pivot Table trong Excel (5 Ví dụ)
  • Cách Làm mới Tất cả Pivot Tables với VBA (4 Cách)
  • Sửa Pivot Table trong Excel (5 Phương pháp)
  • Cách Cập nhật Phạm vi Pivot Table (5 Phương pháp Phù hợp)

6. Lặp qua Hàng hoặc Cột của Bảng với VBA

Để lặp qua từng hàng của bảng với VBA, dùng thuộc tính ListRows.Count.

Dim Table1 As ListObject 
Set Table1 = ActiveSheet.ListObjects("MyTable") 
For i = 1 To Table1.ListRows.Count 
    Table1.ListRows(i).Range.Select 
Next i

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Nó lặp qua từng hàng của bảng Table1 và chọn nó.

Tương tự, để lặp qua từng cột của bảng, dùng thuộc tính ListColumns.Count.

7. Tìm Giá trị Cụ thể trong Bảng

Để tìm giá trị cụ thể trong hàng hoặc cột của bảng với VBA, dùng DataBodyRange.Rows.Find hoặc DataBodyRange.Columns.Find thuộc tính của VBA.

Dim Table1 As ListObject 
Set Table1 = ActiveSheet.ListObjects("MyTable") 
Set Value = Table1.DataBodyRange.Columns(1).Find("Mother", LookAt:=xlWhole) 
MsgBox Value

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Nó tìm giá trị "Mother" ở cột 1 của bảng MyTable, trả về giá trị nếu tìm thấy.

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

8. Thay đổi Kích thước Bảng với VBA trong Excel

Để thay đổi kích thước bảng sang hình dạng mới, trước hết đặt Range (Phạm vi) nơi Bảng sẽ thay đổi.

Sau đó thay đổi kích thước Bảng sang Range đó.

Dim Table1 As ListObject 
Set Table1 = ActiveSheet.ListObjects("MyTable") 
Dim Rng As Range 
Set Rng = Range("B4:C8") 
Table1.Resize Rng

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Nó trước đặt Range là B4:C8, sau đó thay đổi kích thước bảng MyTable sang Range mới đó.

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

9. Xóa Bảng với VBA trong Excel

Để xóa bảng với VBA, dùng thuộc tính Delete của VBA.

Dim Table1 As ListObject 
Set Table1 = ActiveSheet.ListObjects("MyTable") 
Table1.Delete

Làm chủ Bảng Excel với VBA: 9 Kỹ thuật Đã Chứng minh

Nó xóa bảng MyTable khỏi trang tính hoạt động.

Lưu ý Quan trọng

Một Bảng là ListObject trong VBA. Nhưng nếu muốn truy cập như đối tượng Range đơn giản, dùng thuộc tính Table.Range của VBA. Nó trả về bảng như đối tượng Range, và bạn truy cập được tất cả thuộc tính của đối tượng Range trong VBA.

Kết luận

Sử dụng các phương pháp này, bạn có thể dùng bảng với VBA. Có câu hỏi gì? Hãy hỏi chúng tôi.

Đọc thêm

  • Cách Tự động Làm mới Pivot Table trong Excel (2 Phương pháp)
  • Nhóm Cột trong Pivot Table Excel (2 Phương pháp)
  • Nhóm Tùy chỉnh Pivot Table: Với 3 Tiêu chí
  • Sử Dụng Công thức trong Bảng Excel Hiệu quả (Với 4 Ví dụ)