Как использовать переменную vba thisworkbook в excel?

В VBA вы можете использовать свойство ThisWorkbook для ссылки на книгу, в которой вы пишете код. Когда вы его используете, у вас есть доступ ко всем свойствам и методам текущей книги. Проще говоря, вы можете запускать все задачи в текущей книге, не используя имя.

Предположим, вы хотите подсчитать листы в текущей книге. Код, который вам нужно написать, будет следующим.

 Sub vba_thisworkbook() MsgBox ThisWorkbook.Sheets.Count End Sub
vba-эта книга

Когда вы запускаете этот код, появляется окно сообщения с количеством листов в текущей книге.

ящик-сообщение-со-счетом листов

Как я уже сказал, когда вы используете ThisWorkbook, он дает вам доступ к свойствам и методам текущей книги. Вы можете увидеть все это, введя точку (.), чтобы просмотреть полный список.

доступ к свойствам

Полезные ссылки: Запуск макросаСредство записи макросовРедактор Visual BasicПерсональный справочник по макросам

Использование ThisWorkbook с переменной

Далее я покажу вам реальный пример кода для объявления переменной для использования свойства ThisWorkbook. Предположим, вы хотите выполнить несколько действий в текущей книге.

 Sub vba_thisworkbook() Dim myWB As Workbook Set myWB = ThisWorkbook With myWB .Activate .Sheets(1).Activate .Range("A1") = Now .Save .Close End With End Sub

В первой части этого кода у вас есть переменная, затем присвойте ей свойство ThisWorkbook. А во второй части у вас есть оператор With STATEMENT для выполнения нескольких действий с текущей переменной.

ActiveWorkBook против этой книги

Позвольте мне объяснить это вам с помощью простой аналогии, так что подождите следующие 2 минуты.

У вас одновременно открыты две книги (Книга1 и Книга2). Вы пишете код в книге book1 , но в этот момент активна книга2. Поэтому, когда вы запускаете этот код, ссылающийся на ActiveWorkbook, он выполнит это действие в Book2 .

Но когда вы используете ThisWorkbook, VBA всегда ссылается на книгу, в которой написан код.

Вот в чем дело: всегда лучше использовать ThisWorkbook, поскольку это исключает вероятность ошибки.

Узнайте больше о книгах VBA.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *