Как сделать окно Excel всегда поверх других?
Вам когда-нибудь было неудобно, когда окно Excel постоянно скрывается за другими приложениями во время многозадачности? Многие пользователи хотели бы, чтобы окно Рабочая книга Excel оставалось на переднем плане, чтобы можно было сверяться с ним или вводить данные в Excel, работая с другими программами — например, при ручном переносе чисел из браузера или другого приложения. Эта функция особенно полезна пользователям с двумя мониторами, тем, кто проводит презентации, или тем, кто часто переключается между Excel и другими программами.
К сожалению, Microsoft Excel не предлагает встроенной настройки или опции, позволяющей сделать его окно всегда находящимся поверх всех остальных. Прямое закрепление окна Excel поверх других окон не поддерживается стандартным интерфейсом — независимо от версии Office и того, используете ли вы 32-битную или 64-битную сборку. Однако существует альтернативное решение для реализации этой функциональности. Ниже приведён метод с использованием кода VBA, подходящий для различных сценариев.
Сделать окно Excel всегда поверх других с помощью кода VBA
Сделать окно Excel всегда поверх других с помощью кода VBA
Это решение на основе VBA позволяет закрепить активное окно Excel поверх всех остальных, гарантируя его постоянную видимость без перекрытия другими приложениями. Приведённый ниже сценарий VBA совместим как с 32-битной, так и с 64-битной версией Office. Такой подход идеально подходит продвинутым пользователям 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. См. иллюстрацию ниже:

4.После завершения работы макроса окно Excel останется поверх всех других открытых приложений — это значительно упрощает сверку или ввод данных из нескольких программ, исключая риск, что окно Excel случайно скроется.
Этот режим остаётся активным, пока вы не отмените его вручную. Если вы свернёте окно и снова развернёте его, статус «всегда поверх» обычно сохраняется, однако после закрытия и повторного запуска Excel макрос придётся запустить заново.
Примечание: если вы хотите вернуть окно Excel в обычный режим, чтобы оно больше не оставалось поверх других окон, повторите процесс активации: нажмите F5, чтобы открыть диалоговое окно Макросы, выберите макрос SetXNormal и нажмите Выполнить. После этого окно Excel будет вести себя как обычно.
Советы по устранению неполадок: Если при запуске макроса появляется ошибка, дважды проверьте настройки безопасности макросов и убедитесь, что весь код VBA вставлен корректно. В некоторых корпоративных средах определённые операции управления окнами могут быть ограничены — если возникнут проблемы, обратитесь в ИТ-службу. Также убедитесь, что вы запускаете Excel от имени обычного пользователя: для этой задачи запуск от имени администратора, как правило, не требуется.
Это решение на основе VBA идеально подходит, если вы предпочитаете не устанавливать стороннее ПО и готовы использовать встроенные средства сценариев Excel. Однако если вам часто требуется закреплять окна из нескольких приложений, возможно, стоит рассмотреть специализированный инструмент для управления положением окон.
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал 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 и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек