Tham chiếu trang tính với biến đối tượng - Mẹo Excel

Mục lục

Joe đang cố gắng tìm ra lỗi trên macro mới mà anh ấy vừa viết.

Dòng chỉ định NextRow trả về lỗi có nội dung "Biến đối tượng hoặc Không đặt biến khối".

Các biến đối tượng khá tuyệt. Trong các mẹo cũ tại, tôi sẽ sử dụng biến thông thường như sau:

OrigName = ActiveSheet.Name Worksheets(OrigName).Copy

Có một cách tốt hơn. Bạn có thể xác định một biến là bất kỳ đối tượng nào, chẳng hạn như trang tính. Có một số lợi thế cho điều này. Ngắn hơn là sử dụng biến đối tượng thay cho Trang tính (OrigName). Ngoài ra, khi bạn đang nhập mã, VBA sẽ biết rằng biến đó là một trang tính và cung cấp các thuộc tính và phương thức thích hợp sau khi bạn nhập dấu chấm. Đây là mã mới:

Dim WSO as Worksheet Set WSO = Activesheet WSO.Copy

Tuy nhiên, mẹo là khi bạn có một biến đối tượng, nó phải được gán với từ khóa Set. Nếu bạn không đặt Set vào mã, bạn sẽ nhận được "Object Variable or With Block Variable Not Set" hơi không trực quan. Joe chỉ cần đặt trước nhiệm vụ thay đổi của mình bằng từ Set.

thú vị bài viết...