萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 辦公室軟體 >  >> Excel 教學 >> Excel 綜合

Excel 2007 禁用列印功能:VBA 事件 Workbook_BeforePrint 讓列印鍵直接失效

情境:推行無紙化辦公、防止誤列印、管控機密文件外洩

透過 `Workbook_BeforePrint` 事件攔截所有列印動作(工具列按鈕、Office 選單、Ctrl+P),彈出提示並取消列印,不影響編輯、儲存等正常操作。

實作步驟

  1. 按 Alt+F11 開啟 VBE。
  2. 專案視窗(Ctrl+R 顯示)右鍵 ThisWorkbook → 「檢視程式碼」。
  3. 貼入以下程式碼:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
    Cancel = True
    MsgBox "節約用紙 拒絕列印", vbInformation
End Sub
  1. 按 Alt+F11 返回 Excel。
  2. 另存為 「啟用巨集的活頁簿 (*.xlsm)」 格式,否則巨集不會儲存。

測試驗證

  • 點擊列印按鈕 / Office 選單列印 / Ctrl+P → 全部彈出「節約用紙 拒絕列印」訊息視窗,列印動作被取消。
  • 使用者立即知曉是人為限制而非軟硬體故障。

解除限制

同樣進入 VBE 刪除或註解該 `Workbook_BeforePrint` 程序,重存即可恢復列印功能。

延伸應用

  • 改為 `If Not UserHasPermission Then Cancel = True` 搭配使用者帳號判斷,實現角色型列印權限。
  • 記錄列印嘗試紀錄至隱藏工作表,供稽核追蹤。
copyright © 萬盛學電腦網 all rights reserved