Перейти к содержимому
Наше приложение «Дешевые авиабилеты» в AppGallery >>

VBA Excel. Свойство Application.WindowState

    Установка состояния окна приложения Excel из кода VBA с помощью свойства Application.WindowState. Сворачивание и разворачивание окна. Чтение данных о состоянии окна.

    Свойство Application.WindowState

    Application.WindowState — это свойство, которое задает или возвращает состояние окна приложения Excel.

    Состояние окна приложения Excel задается константой из коллекции XlWindowState, при чтении информации о состоянии окна — свойство Application.WindowState возвращает числовое значение константы.

    Свойство Application.WindowState позволяет развернуть окно приложения Excel из кода VBA на весь экран — до максимального размера, свернуть окно «в иконку» или задать ему нормальные размеры, установленные ранее, развернув из свернутого или свернув из максимального.

    Синтаксис свойства WindowState объекта Application:

    Константы XlWindowState

    Константы из коллекции XlWindowState:

    Константа Значение Описание
    xlMaximized -4137 Максимальное окно (развернуто на весь экран)
    xlMinimized -4140 Минимальное окно (свернуто «в иконку»)
    xlNormal -4143 Нормальное окно (размеры, установленные ранее)

    Пример кода с WindowState

    Пример записи и чтения свойства Application.WindowState:

    Попробуйте по очереди задавать разные константы свойству Application.WindowState и смотрите, какое значение будет считано. У меня получились удивительные результаты при выполнении строк кода по очереди, как в примере:

    • Application.WindowState = xlMinimized — MsgBox возвращает совсем не -4140;
    • после первого запуска Application.WindowState = xlNormal — окно приложения разворачивается на весь экран, после второго запуска — переходит к нормальному состоянию.

    Не удалось мне добиться значения -4140 и при минимизации окна вручную, разместив предварительно следующий код в модуль книги:


    Содержание рубрики VBA Excel по тематическим разделам со ссылками на все статьи.