Đối tượng workbook và worksheet
Phân tầng đối tượng
Trong lập trình VBA Exel, một đối tượng có thể bao gồm một đối tượng khác, và đối tượng kia có thể bao gồm một đối tượng khác nữa. Hay nói cách khác, Chương trình VBA Exel bao gồm làm việc với các lớp đối tượng. Đây là một khả năng rất phức tạp.Gốc của tất cả đối tượng chính là excel. Chúng ta có thể gọi đây là một chương trình ứng dụng. Ứng dụng này bao gồm tất cả các đối tượng khác. Ví dụ, một đối tượng Workbook. Bạn có thể tạo ra một vài workbook. Wookbook bao gồm các đối tượng khác. Giống như là một Worksheet. Worksheet bao gồm các đối tượng khác nữa như là đối tượng dãy.
Ở chương Tạo một macro chúng ta có thể biết được một đoạn mã chạy như thế nào bởi click command button. Chúng ta sử dụng đoạn mã sau:
Range("A1").Value = "Hello"Nhưng những gì chúng ta hiểu là:
Application.Workbooks("create-a-macro").Worksheets(1).Range("A1").Value = "Hello"
Chú ý: Những đối tượng được kết nối với dot. Chúng ta không thêm được lệnh theo cách này. Đó bởi vì chúng ta đặt lệnh của chúng ta trong một macro, tức là trong một worksheet. Nếu bạn muốn thay đổi những thứ khác trên các worksheet khác bao gồm cả các đối tượng worksheet khác. Hãy đọc tiếp ở bên dưới.
Bộ sưu tập
Bạn có thể để ý thấy rằng cả workbooks và worksheets đều là số nhiều. Bởi vì chúng đều là những bộ sưu tập. Các workbooks sưu tập bao gồm tất cả các đối tượng workbook mà đang được mở hiện tại. Các worksheet bao gồm tất cả các worksheet trong một workbook.Bạn có thể nhớ bộ sưu tập sau đây, cho ví dụ, một đối tượng worksheet theo 3 cách như sau
1. Sử dụng tên worksheet:
Worksheets("Sales").Range("A1").Value = "Hello"
2. Sử dụng số chỉ vị trí:Worksheets(1).Range("A1").Value = "Hello"
3. Sử dụng tên mã:Sheet1.Range("A1").Value = "Hello"
Bạn có thể thấy tên mã trong Visual basic Editor. Trong project explorer, tên đầu tiên là tên mã. Tên thứ 2 là tên worksheet.
Chú ý: Tên mã có dùng nếu như bạn thay đổi tên worksheet hoặc trật tự các worksheets nhưng đây là cách an toàn nhất để dẫn tới các worksheet. Click View. Properties Window để thay đổi tên mã của một worksheet. Chỉ có một điểm bất lợi đó là bạn không thể sử dụng codename nếu bạn dẫn một worksheet trong một workbook khác.
Thuộc tính và phương pháp
Nào, hãy đặt một vài thuộc tính và phương pháp của bộ sưu tập workbook và worksheet. Thuộc tính là những thứ mà bộ sưu tập có(chúng miêu tả bộ sưu tập), Khi một phương pháp làm 1 điều gì đó(trình diễn một hành động với bộ sưu tập)
Hãy đặt một command button trên worksheet của bạn và thêm những dòng mã sau:
1.Thêm một hành động của bô sưu tập workbook tạo ra một workbook mới.
Workbooks.Add
2. Thuộc tính đếm của bộ sưu tập đếm số worksheet trong một workbook.MsgBox Worksheets.Count
Kết quả khi bạn click vào command button trên sheet:Chú ý: Thuộc tính đếm của workbook đếm số workbook đang hoạt động.