Tìm hiểu thêm về đối tượng Workbook và Worksheet trong Excel VBA.

Object Hierarchy

Trong Excel VBA, một đối tượng có thể chứa một đối tượng khác, và đối tượng đó có thể chứa một đối tượng khác, v.v. Nói cách khác, lập trình VBA trong Excel liên quan đến việc làm việc với một cấu trúc phân cấp đối tượng. Điều này nghe có vẻ khá khó hiểu, nhưng chúng tôi sẽ nói rõ.

Mẹ của tất cả các đối tượng là chính Excel. Chúng tôi gọi nó là đối tượng Ứng dụng. Đối tượng ứng dụng chứa các đối tượng khác. Ví dụ, đối tượng Workbook (tệp Excel). Đây có thể là bất kỳ sổ làm việc nào bạn đã tạo.

Đối tượng Workbook chứa các đối tượng khác, chẳng hạn như đối tượng Worksheet. Đối tượng Trang tính chứa các đối tượng khác, chẳng hạn như đối tượng Phạm vi.

Range("A1").Value = "Hello"

nhưng ý của chúng tôi thực sự là:

Application.Workbooks("create-a-macro").Worksheets(1).Range("A1").Value = "Hello"

Bộ sưu tập

Bạn có thể nhận thấy rằng Workbooks và Worksheets đều là số nhiều. Đó là bởi vì chúng là bộ sưu tập. Bộ sưu tập Workbooks chứa tất cả các đối tượng Workbook hiện đang mở. Bộ sưu tập Trang tính chứa tất cả các đối tượng Trang tính trong sổ làm việc.

Worksheet Names

Bạn có thể tham chiếu đến một thành viên của bộ sưu tập, ví dụ, một đối tượng Trang tính đơn lẻ, theo ba cách.

  1. Sử dụng tên trang tính.

Worksheets("Sales").Range("A1").Value = "Hello"
  1. Sử dụng số chỉ mục (1 là trang tính đầu tiên bắt đầu từ bên trái).

Worksheets(1).Range("A1").Value = "Hello"
  1. Sử dụng CodeName.

Sheet1.Range("A1").Value = "Hello"

Để xem Tên mã của một trang tính, hãy mở liên kết: / vba-create-a-macro # visual-basic-editor [Visual Basic Editor]. Trong Project Explorer, tên đầu tiên là CodeName. Tên thứ hai là tên trang tính (Bán hàng).

CodeName

Lưu ý: CodeName vẫn giữ nguyên nếu bạn thay đổi tên trang tính hoặc thứ tự của các trang tính, vì vậy đây là cách an toàn nhất để tham chiếu trang tính. Bấm Xem, Cửa sổ Thuộc tính để thay đổi Tên Mã của một trang tính. Có một nhược điểm, bạn không thể sử dụng CodeName nếu bạn tham chiếu một trang tính trong một sổ làm việc khác.

Thuộc tính và phương thức

Bây giờ chúng ta hãy xem xét một số thuộc tính và phương thức của bộ sưu tập Workbooks và Worksheets. Thuộc tính là cái gì đó mà một bộ sưu tập có (chúng mô tả bộ sưu tập), trong khi các phương thức làm điều gì đó (chúng thực hiện một hành động với một bộ sưu tập).

Đặt mộ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 các dòng mã:

  1. Phương pháp Thêm của bộ sưu tập Sổ làm việc tạo một sổ làm việc mới.

Workbooks.Add

Lưu ý: phương pháp Thêm của bộ sưu tập Trang tính sẽ tạo một trang tính mới.

  1. Thuộc tính Count của bộ sưu tập Worksheets đếm số trang tính trong sổ làm việc.

MsgBox Worksheets.Count

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

Count Property in Excel VBA

Lưu ý: thuộc tính Count của bộ sưu tập Workbooks đếm số lượng sổ làm việc đang hoạt động.