Найти в Дзене
VBA Excel с нуля

VBA Excel № 26.1. Для активного объекта даём указание значений свойств

При работе в программе Excel, только одна книга может быть активной в конкретный момент времени. В активной книге может быть только один активный лист в определенный момент времени, а также только одна активная ячейка на этом листе, даже если вы выбрали диапазон, который состоит из нескольких ячеек. Таким образом, информация об активных книгах, листах и ячейках важна для написания кода на VBA, и в упрощенном порядке можно обращаться к активным объектам. Этот метод создания ссылок на объекты может быть полезным, когда неизвестно, с какой книгой, листом или диапазоном работаете. В VBA создание ссылок на объекты облегчается с помощью свойств объекта Application. Например, свойство ActiveCell объекта Application возвращает ссылку на активную ячейку, и при помощи следующей инструкции можно присвоить значение 98 активной ячейке: ActiveCell.Value = 98 Следует заметить, что в этом примере не указывается объект Application, так как он подразумевается. Однако, важно понимать, что эта инструкция

При работе в программе Excel, только одна книга может быть активной в конкретный момент времени. В активной книге может быть только один активный лист в определенный момент времени, а также только одна активная ячейка на этом листе, даже если вы выбрали диапазон, который состоит из нескольких ячеек. Таким образом, информация об активных книгах, листах и ячейках важна для написания кода на VBA, и в упрощенном порядке можно обращаться к активным объектам.

Этот метод создания ссылок на объекты может быть полезным, когда неизвестно, с какой книгой, листом или диапазоном работаете. В VBA создание ссылок на объекты облегчается с помощью свойств объекта Application. Например, свойство ActiveCell объекта Application возвращает ссылку на активную ячейку, и при помощи следующей инструкции можно присвоить значение 98 активной ячейке:

ActiveCell.Value = 98

Скриншот с моего ноутбука
Скриншот с моего ноутбука

Следует заметить, что в этом примере не указывается объект Application, так как он подразумевается. Однако, важно понимать, что эта инструкция может привести к ошибке, если активный лист не является рабочим. Например, если VBA выполняет этот оператор, когда активен лист диаграммы, то процедура прекращает выполнение, и на экране появится сообщение об ошибке.

Если на рабочем листе выделен диапазон ячеек, то активная ячейка будет находиться в этом диапазоне. Другими словами, активная ячейка всегда одна и никогда не бывает несколько.

Объект Application также имеет свойство Selection, которое возвращает ссылку на выделенный объект, такой как отдельная ячейка (активная), диапазон ячеек или объект типа ChartObject, TextBoх или Shape.

Продолжение в следующей статье