Excel VBA存檔:3行簡單程式碼教你自動儲存檔案
Excel VBA存檔是很值得學習的技巧,可以避免工作成果不小心丟失了。本文先說明如何在選項進行基本設定,然後教你3行簡單程式碼就能設定自動儲存檔案。
所有Excel使用者的共同噩夢,就是突然間跳出一個視窗,微軟溫馨提示:Excel已經停止運作。雖然Excel設置有自動儲存的功能,當機重開會自動開啟備份檔案、自動復原文件。然而,既然Excel常常帶來意外驚喜,最好不要完全指望它,自己來比較保險。有過痛苦經驗的人士,在編輯需要長時間進行的Excel檔案時,應該都會提醒自己,想到了就儲存一下,然後定期備份。不過,人腦總是有非常大的疏忽可能性,萬一忘了,又萬一中奬了,一切得重頭再來,真的是傷不起。因此最好、最完美的解決方案,是讓電腦自動儲存及備份,這個VBA可以輕鬆達到,以下先分享自動儲存的部份:
一、成本分攤設置
這是成本分攤的Excel工作表,較為複雜,在操作時最好能時刻儲存,避免悲劇。

二、Excel自動儲存
Excel選項的「儲存」區塊,在此設定自動儲存。

三、回復檔案位置
複製上個步驟的路徑,貼到檔案總管,進入Excel預先設置好的自動儲存資料夾,裡面是備份檔案。

四、VBA插入模組
VBA的作法,在Excel工作表中按「Alt+F11」,進入VBA編輯環境,「插入」、「模組」。

五、Excel VBA存檔
ExcelVBA存檔常被用來打造自動化工作流程,尤其在長時間開啟的報表或會計系統中更是必備。利用VBA排程自動儲存,不但能降低檔案遺失風險,也能確保資料即時更新。這種做法特別適合日誌、傳票、ERP表單等長期運作的Excel架構,穩定又安心。
依照文章範例,輸入下列VBA程式,達到每五分鐘儲存一次的效果,程式如下:
Sub Time()
Application.OnTime Now + TimeValue(“00:05:00”), “Autosave”
End Sub
Sub Autosave()
ThisWorkbook.Save
Call Time
End Sub
✅ 程式流程說明:
- Time() 子程序
用Application.OnTime安排 5 分鐘後執行Autosave。 - Autosave() 子程序
執行ThisWorkbook.Save儲存檔案
然後再次呼叫Time()→ 繼續排下一次 5 分鐘後的自動儲存。
也就是 → 啟動一次 Time() → 從此每 5 分鐘自動儲存。

六、快速檢視巨集
關閉VBA,回到Excel,快速組合鍵「Alt+F8」開啓巨集。

七、Excel執行巨集
「巨集」管理視窗中,可以看到在VBA以Sub建立的程序,選擇「Autosave」,然後「執行」。

八、驗證程式執行
打開Excel檔案所在的資料夾,發現「修改日期」悄悄更新,表示自動儲存正執行中。

儲存檔案與另存新檔
本篇文章介紹的是直接定期儲存檔案,Excel預設的自動儲存功能,是把檔案另外存一個地方。原檔儲存較為直接、合乎一般的作業方式,但是另存新檔除了備份的功能之外,還有保留歷史版本的作用。唯一的缺點,另存新檔會額外佔用空間,以一般Excel檔案的大小而言,這部份應該是毋需考慮。下一節便以此篇文章的程式代碼為基礎,延伸介紹VBAV如何另存歷史檔案備份,並且細部說明程式代碼。
本文章相關影片:
贊贊小屋VBA教學中心:
Excel巨集執行、Excel巨集程式、Excel巨集程式碼、VBA自學入門、VBA基礎語法、VBA基本應用、VBA UserForm、VBA VLOOKUP。
VBA課程推薦:零基礎入門進階的20小時完整內容


