Перейти к содержимому

Kutools для Office — один пакет. Пять инструментов. Выполняйте больше.

Как сделать, чтобы окно Excel всегда оставалось сверху?

Author Xiaoyang Last modified

Было ли вам когда-нибудь неудобно, когда окно Excel постоянно скрывается за другими приложениями во время многозадачности? Многие пользователи хотят, чтобы окно книги Excel оставалось на переднем плане, чтобы они могли обращаться к данным или вводить их в Excel, работая с другими программами, например, при ручном переносе чисел из браузера или другого десктопного приложения. Эта функция особенно полезна для пользователей, работающих с двумя мониторами, выступающих с презентациями или часто переключающихся между Excel и другими программами.

К сожалению, Microsoft Excel не предлагает встроенную настройку или опцию, которая позволяла бы окну Excel всегда оставаться поверх других окон. Прямое закрепление Excel над всеми остальными открытыми окнами не поддерживается через стандартный интерфейс, независимо от вашей версии или того, используете ли вы Office 32-бит или 64-бит. Однако существует альтернативное решение для реализации этой функциональности. Ниже вы найдете метод VBA-кода, подходящий для различных сценариев использования.

Держите окно Excel всегда сверху с помощью кода VBA


Держите окно Excel всегда сверху с помощью кода VBA

Это решение с использованием кода VBA позволяет вам держать активное окно Excel закрепленным поверх всех остальных окон, обеспечивая его постоянную видимость и предотвращая перекрытие другими окнами приложений. Будь вы пользователь 32-битной или 64-битной версии Office, предоставленный ниже скрипт VBA работает в обоих случаях. Этот подход особенно подходит для продвинутых пользователей Excel или тех, кто находится в средах, где установка дополнительного программного обеспечения запрещена.

Перед продолжением сохраните свою работу, так как иногда могут возникнуть непредвиденные ошибки или перезапуск Excel при выполнении макросов. Также учтите, что это решение влияет только на окно Excel, в котором вы запускаете макрос; другие экземпляры автоматически не останутся сверху.

1. Нажмите и удерживайте клавиши ALT + F11 на клавиатуре, чтобы запустить окно редактора Microsoft Visual Basic for Applications. Это среда, где вы можете вводить и управлять кодом VBA для ваших книг Excel.

2. В редакторе VBA нажмите Вставка > Модуль, чтобы добавить новый модуль в вашу книгу. Затем скопируйте и вставьте следующий код VBA в открывшееся окно Модуль:

Код VBA: Держите окно Excel всегда сверху

'Update 20140909
#If Win64 Then
    Public Declare PtrSafe Function SetWindowPos _
        Lib "user32" ( _
            ByVal hwnd As LongPtr, _
            ByVal hwndInsertAfter As LongPtr, _
            ByVal x As Long, ByVal y As Long, _
            ByVal cx As Long, ByVal cy As Long, _
            ByVal wFlags As Long) _
    As Long
#Else
    Public Declare Function SetWindowPos _
        Lib "user32" ( _
            ByVal hwnd As Long, _
            ByVal hwndInsertAfter As Long, _
            ByVal x As Long, ByVal y As Long, _
            ByVal cx As Long, ByVal cy As Long, _
            ByVal wFlags As Long) _
    As Long
#End If
Public Const SWP_NOSIZE = &H1
Public Const SWP_NOMOVE = &H2
Public Const HWND_TOPMOST = -1
Public Const HWND_NOTOPMOST = -2
Sub ShowXLOnTop(ByVal OnTop As Boolean)
    Dim xStype As Long
    #If Win64 Then
        Dim xHwnd As LongPtr
    #Else
        Dim xHwnd As Long
    #End If
    If OnTop Then
        xStype = HWND_TOPMOST
    Else
        xStype = HWND_NOTOPMOST
    End If
    Call SetWindowPos(Application.hwnd, xStype, 0, 0, 0, 0, SWP_NOSIZE Or SWP_NOMOVE)
End Sub
Sub SetXLOnTop()
    ShowXLOnTop True
End Sub
Sub SetXLNormal()
    ShowXLOnTop False
End Sub

Этот код использует вызовы API на уровне системы для управления статусом закрепления окна. Убедитесь, что макросы включены в настройках вашего Excel, чтобы код VBA работал правильно. Если вы столкнетесь с сообщением «Макросы отключены», вам может потребоваться обновить настройки Центра доверия в Excel, чтобы разрешить выполнение макросов.

3. После ввода кода нажмите F5 или кнопку Выполнить в редакторе VBA. Появится диалоговое окно Макросы, в котором будут перечислены доступные макросы. Выберите макрос с именем SetXLOnTop, затем нажмите Выполнить, чтобы запустить его. Это применит статус «всегда сверху» к вашему текущему окну Excel. См. иллюстрацию ниже:

a screenshot showing how to run the code

4. Как только макрос завершит выполнение, ваше окно Excel должно оставаться видимым поверх всех открытых приложений, что значительно упростит ссылки или ввод данных в нескольких программах без скрытия окна Excel.

Эта настройка будет действовать, пока вы не измените её вручную. Если вы свернете и восстановите окно, статус «всегда сверху» обычно сохранится, но закрытие и повторное открытие Excel потребует повторного запуска макроса.

Примечание: Если вы хотите вернуть окно Excel в нормальное состояние, чтобы оно больше не было всегда сверху, повторите процесс активации: нажмите F5, чтобы открыть диалоговое окно Макросы, выберите макрос SetXNormal и нажмите Выполнить. Ваше окно Excel будет работать как обычно.

Советы по устранению неполадок: Если вы получили ошибку при запуске макроса, проверьте настройки безопасности макросов и убедитесь, что весь код макроса был правильно вставлен. Некоторые корпоративные среды могут ограничивать определённые операции управления окнами, поэтому проконсультируйтесь с ИТ-отделом, если метод не работает должным образом. Также убедитесь, что вы запускаете Excel как обычный пользователь; запуск от имени администратора для этой задачи обычно не требуется.

Это решение с использованием VBA идеально подходит, если вы не хотите устанавливать стороннее программное обеспечение и чувствуете себя комфортно, используя встроенные функции создания скриптов в Excel. Однако, если вам часто нужно закреплять окна из нескольких приложений, вы можете предпочесть инструмент, предназначенный для управления положением окон.


Лучшие инструменты для повышения продуктивности в Office

🤖 Kutools AI Aide: Совершенно новый подход к анализу данных благодаря: Интеллектуальное выполнение |  Генерация кода  |  Создание пользовательских формул |  Анализ данных и построение диаграмм  |  Вызов Kutools Functions
Популярные функции: Поиск, выделение или отметка дубликатов | Удалить пустые строки | Объединить столбцы или адреса без потери данных | Округлить ...
Супер ПОИСК: VLOOKUP по нескольким критериям | VLOOKUP по нескольким значениям | Многолистовой поиск | Распознавание нечетких соответствий ...
Расширенный раскрывающийся список: Быстро создать раскрывающийся список | Зависимый раскрывающийся список | Множественный выбор в раскрывающемся списке ...
Менеджер столбцов: Добавить определённое количество столбцов | Переместить столбцы | Переключить видимость скрытых столбцов | Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка фокусировки | Дизайн листа | Улучшенная строка формулы | Управление книгой и листами | Библиотека автотекста | Выбор даты | Объединить данные | Зашифровать/расшифровать ячейки | Отправить письмо по списку | Супер фильтр | Специальный фильтр (фильтр жирный/курсив/зачеркнутый...) ...
Топ15 наборов инструментов:12 текстовых инструментов (Добавить текст, Удалить определенные символы, ...) |50+ типов диаграмм (Диаграмма Ганта, ...) |40+ полезных формул (Расчет возраста на основе даты рождения, ...) |19 инструментов для вставки (Вставить QR-код, Вставить изображение по пути, ...) |12 инструментов преобразования (Преобразовать в слова, Конвертация валюты, ...) |7 инструментов объединения и разделения (Расширенное объединение строк, Разделить ячейки, ...) | ... и многое другое
Используйте Kutools на предпочитаемом вами языке — поддерживает Английский, Испанский, Немецкий, Французский, Китайский и более40 других языков!

Повысьте свои навыки работы в Excel с помощью Kutools для Excel и ощутите эффективность на новом уровне. Kutools для Excel предлагает более300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы выбрать функцию, которая вам нужнее всего...


Office Tab добавляет вкладки в Office и делает вашу работу намного проще

  • Включите режим вкладок для редактирования и чтения в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна вместо новых отдельных окон.
  • Увеличьте свою продуктивность на50% и уменьшите количество щелчков мышью на сотни ежедневно!

Все надстройки Kutools. Один установщик

Пакет Kutools for Office включает надстройки для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro — идеально для команд, работающих в разных приложениях Office.

Excel Word Outlook Tabs PowerPoint
  • Комплексный набор — надстройки для Excel, Word, Outlook и PowerPoint плюс Office Tab Pro
  • Один установщик, одна лицензия — настройка занимает считанные минуты (MSI-совместимо)
  • Совместная работа — максимальная эффективность между приложениями Office
  • 30-дневная полнофункциональная пробная версия — без регистрации и кредитной карты
  • Лучшее соотношение цены и качества — экономия по сравнению с покупкой отдельных надстроек