2016-02-16 38 views
6

Có sự khác biệt nào giữa Thisworkbook và ActiveWorkbook không.Sự khác biệt giữa Thisworkbook.name và Activeworkbook.name trong VBA

Ví dụ mã:

Sub workbook_name() 
    MsgBox Thisworkbook.name 
    End Sub 



Sub active_name() 
    MsgBox Activeworkbook.name 
    End Sub 

Cả hai sẽ trả về kết quả tương tự,

Có bất kỳ trường hợp khác, nơi mà chúng ta phải sử dụng đặc biệt ThisWorkbook nơi ActiveWorkbook không hoạt động

+1

ThisWorkbook đối tượng liên quan đến bảng tính mà đang ở. ActiveWorkBook đối tượng đề cập đến workbook hiện đang hoạt động. – 0m3r

+0

Cảm ơn bạn đã trả lời nhanh Om3r –

Trả lời

8

Activeworkbook.name được sử dụng để có được tên của bảng tính hoạt động từ n số lượng khác nhau của bảng tính mở ra.

Thisworkbook.name được sử dụng để lấy tên của sổ làm việc trong đó mã được viết hoặc được lưu trữ trong mô-đun của sổ làm việc đó.

Ví dụ nếu bạn đang viết mã trong các mô-đun hoặc tờ workbook A sau đó Thisworkbook.name sẽ trở lại A dù đó là activeworkbook

+3

Chỉ cần làm rõ thêm một chút về điều này - 'ThisWorkbook' đề cập đến sổ làm việc trong đó mã đang được thực thi tại thời điểm đó trong thời gian cư trú. Đây là những gì tôi nghĩ rằng bạn đang nói anyway trong câu trả lời của bạn nhưng nghĩ rằng nó có thể là một chút rõ ràng hơn. +1 –

Các vấn đề liên quan