Bài 8 - Đối tượng Workbook và Worksheet trong lập trình VBA Excel


Microsoft Excel được tạo nên từ nhiều thành phần, mỗi thành phần đóng một vài trò quan trọng trong việc vận hàng của Excel. Microsoft Excel tạm thời có thể được hình thành từ các thành phần như sau:
{tocify} $title={Table of Contents}

1. Đối tượng Application (Microsoft Excel)

Application trong VBA dùng để chỉ đối tượng Microsoft Excel bạn đang sử dụng. Đối tượn này cũng thường dùng trong việc gọi các công thức từ ứng dụng.
Cú pháp:
MsgBox ThisWorkbook.Parent
Kết quả:
Microsoft Excel

Để sử dụng một công thức của Excel trong VBA ta sử dụng đối tượng Application. Cú pháp sau sẽ thực hiện việc gán cụm từ "Helo Everybody!" vào ô A1:
Cú pháp:
Application.ThisWorkbook.Worksheets(1).Range("A1").Value = "Hello Everybody!"

2. Đối tượng Workbook

Đối với đối tượng này chúng ta có một số thuộc tính và phương thức thường được sử dụng như:

- Mở một file excel với đường dẫn cụ thể
Cú pháp:
Workbook.Open("D:\Excel\VBA\Vidu.xlsx")

- Mở thêm mới một Workbook
Cú pháp:
Workbook.Add

- Lấy tên hiện tại của Workbook
Cú pháp:
ThisWorkbook.Name

- Lấy đường dẫn hiện tại của Workbook
Cú pháp:
ThisWorkbook.Path

- Lưu lại các thao tác trên Workbook
Cú pháp:
ThisWorkbook.Save

- Đóng Workbook, lưu lại các thay đổi
Cú pháp:
ThisWorkbook.Close True 

- Đóng Workbook, không lưu các thay dổi
Cú pháp:
ThisWorkbook.Close False

3. Đối tượng Worksheet

Đây là đối tượng được chúng ta thao tác rất nhiều trong khi lập trình. Đối tượng này có thể được gọi đến bằng các cách như sau:

- Sử dụng codename
Cú pháp:
Sheet1.Range("A1").Value = "Xin chao"

- Sử dụng số thứ tự của Worksheet
Cú pháp:
Sheets(1).Range("A1").Value = "Xin chao"

- Sử dụng tên của Worksheet
Cú pháp:
Sheets("ten_worksheet").Range("A1").Value = "Xin chao"
hoặc Worksheets("ten_worksheet").Range("A1").Value = "Xin chao"

Ngoài ra đối tượng còn có các phương thức như: Count, Active, Select
Cú pháp:
'Đếm số lượng sheet 
Worksheets.Count

'Kích hoạt sheet được chỉ định
Sheet1.Active 

'Chọn sheet được chỉ định
Sheet1.Select

Post a Comment

Previous Post Next Post

Comments