如何讓 Excel 視窗永遠置頂?
當您在多工處理時,是否曾因 Excel 視窗老是被其他應用程式遮住而感到困擾?許多使用者都希望 Excel 活頁簿視窗能始終保持在前景,讓您即使使用瀏覽器或其他桌面應用程式,也能輕鬆參考或輸入資料。這項功能對於使用雙螢幕、進行簡報,或頻繁在 Excel 與其他軟體間切換的使用者來說,尤其實用!
遺憾的是,Microsoft Excel 本身並未內建讓視窗永遠置頂的功能。無論您使用的是哪個版本,或安裝的是 32 位元還是 64 位元的 Office,其標準介面皆不支援直接將 Excel 視窗固定在所有開啟視窗的最上層。不過,仍有替代方案可達成此效果。以下提供一種適用於多種情境的 VBA 程式碼方法。
使用 VBA 程式碼讓 Excel 視窗永遠置頂
這段 VBA 程式碼解決方案能將您目前使用的 Excel 視窗置頂,使其始終顯示在所有其他視窗之上,確保不會被其他應用程式遮蓋。無論您使用的是 32 位元或 64 位元版本的 Office,下方提供的 VBA 指令碼皆可完美適用。此方法特別適合進階 Excel 使用者,以及無法安裝額外軟體的環境中工作的使用者。
執行前請務必先儲存您的工作內容,因為執行巨集時偶爾可能發生非預期錯誤,甚至導致 Excel 重新啟動。此外請注意,此解決方案僅對執行巨集的 Excel 視窗生效,其他 Excel 執行個體不會自動置頂。
1. 按住鍵盤上的 ALT + F11 鍵,即可開啟 Microsoft Visual Basic for Applications 編輯器視窗——這是您在 Excel 工作表中輸入與管理 VBA 程式碼的專屬環境!
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 視窗恢復為一般狀態(不再永遠置頂),請重複啟用程序:按下 F5 開啟巨集對話方塊,選取 SetXNormal 巨集,再點擊執行,即可讓您的 Excel 視窗恢復正常行為。
疑難排解提示:若執行巨集時出現錯誤,請再次檢查巨集安全性設定,並確認所有程式碼皆已正確貼上。某些企業環境可能會限制特定的視窗管理操作;若此方法未如預期運作,請立即諮詢 IT 部門。此外,請務必以一般使用者身分執行 Excel——此任務通常無需系統管理員權限即可順利完成!
若您不想安裝第三方軟體,且熟悉 Excel 內建的 VBA 功能,這套 VBA 解決方案將是理想之選。然而,若您經常需要從多個應用程式固定視窗,或許會更傾向使用專門管理視窗位置的工具。
最佳 Office 生產力工具
| 🤖 | KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行 | 產生程式碼| 建立自訂公式 | 分析資料並產生圖表| 呼叫增強函數…… |
| 熱門功能:尋找、醒目提示或標記重複值 | 刪除空白行 | 合併列或儲存格而不遺失資料 | 不使用公式的四捨五入…… | |
| 高級 LOOKUP:多重條件 VLookup | 多重數值 VLookup | 跨多個工作表 VLookup | 模糊查找…… | |
| 高級下拉列表:快速建立下拉式清單 | 相依式下拉式清單 | 多選下拉式清單…… | |
| 欄位管理員:新增指定數量的欄位|移動欄位|切換隱藏欄位的可見狀態|比較範圍與欄位…… | |
| 精選功能:網格聚焦 | 設計視圖 |增強編輯欄 | 工作簿與工作表管理員 | 資源庫(自動文字)| 日期提取 | 合併工作表 | 加密/解密儲存格 | 依清單傳送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體儲存格/斜體/刪除線……) ...... | |
| 頂尖 15 工具組:12 文字工具(添加文本,刪除特定字符,……)| 50+ 圖表 類型(甘特圖,……)| 40+ 實用公式(基於生日計算年齡,……)| 19 插入工具(插入二維碼,從路徑插入圖片,……)| 12 轉換工具(金額轉大寫,匯率轉換,……)| 7 合併和拆分工具(高級合併行,分割儲存格,……)|……以及更多 |
運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……
Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!
- 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 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 天完整功能試用— 無需註冊,無需信用卡
- 超值之選— 比單獨購買各增益集更省費用