標題:
[發問]
Excel 2007 自動另存新檔
[打印本頁]
作者:
macacajau
時間:
2013-12-5 15:19
標題:
Excel 2007 自動另存新檔
各位先進好
請問如何用Excel 2007 根據時間來自動另存新檔
小弟想用在報表上面
比如說到下午五點就自動另存一個新的檔案
請問撰寫,謝謝。
作者:
luhpro
時間:
2013-12-5 23:51
本帖最後由 luhpro 於 2013-12-5 23:55 編輯
回復
1#
macacajau
舉一個最陽春的例子:
以下程式放在 Module1 內
Sub AutoSave()
ThisWorkbook.SaveAs ThisWorkbook.Path & "\" & Format(Now, "yyyymmdd") & ".xls"
End Sub
複製代碼
以下程式放在 ThisWorkbook 的 Open 內
Private Sub Workbook_Open()
Application.OnTime TimeValue("17:00:00"), "Module1.AutoSave"
End Sub
複製代碼
[attach]16971[/attach]
有個關鍵是你這個 Excel 檔案必須一直保持開啟著,
萬一沒留意不小心關掉了這個檔案就不會存檔了.
作者:
macacajau
時間:
2013-12-6 10:27
回復
2#
luhpro
感謝大哥的回覆,我在嘗試看看~
但是小弟不能下載附件~
可以寄到我信箱給我嗎?
[email protected]
謝謝你~
作者:
wl02353427
時間:
2013-12-6 11:24
以下是測試出來的方式,這方法不知道穩不穩定,也希望有前輩可以指導,新手學習中...
在工作表1 or ThisWorkbook下:
Private Sub CommandButton1_Click()
startTimer
End Sub
Private Sub CommandButton2_Click()
stopTimer
End Sub
在模組當中:
Sub startTimer()
Application.OnTime Now + TimeValue("00:00:01"), "Increment_count"
End Sub
Sub Increment_count()
hiji = Now()
Range("A1") = hiji
WaitSec = 30 '延遲時間
NameOfThisProcedure = "儲存程序"
NextTime = hiji + TimeSerial(0, 0, WaitSec)
Application.OnTime EarliestTime:=NextTime, Procedure:=NameOfThisProcedure, LatestTime:=NextTime
startTimer
End Sub
Sub 儲存程序()
ThisWorkbook.SaveAs ThisWorkbook.Path & "\" & Format(Now, "yyyymmdd") & ".xls"
End Sub
[attach]16977[/attach]
作者:
wl02353427
時間:
2013-12-6 11:27
回復
3#
macacajau
您好,2F前輩的程式碼僅複製上去執行就有效果。
作者:
macacajau
時間:
2013-12-6 11:37
回復
5#
wl02353427
大大你好~
請問程式放在 ThisWorkbook 的 Open 內
這是甚麼意思呢?
我測試之後不會自動存檔~
謝謝~
作者:
wl02353427
時間:
2013-12-6 11:51
本帖最後由 wl02353427 於 2013-12-6 11:53 編輯
回復
6#
macacajau
應該可以直接複製以下使用,那個時間只是確認他有沒有在動而已...
Sub Increment_count()
hiji = Now()
Range("A1") = hiji
WaitSec = 30 '延遲時間
NameOfThisProcedure = "儲存程序"
NextTime = hiji + TimeSerial(0, 0, WaitSec)
Application.OnTime EarliestTime:=NextTime, Procedure:=NameOfThisProcedure, LatestTime:=NextTime
startTimer
End Sub
Sub 儲存程序()
ThisWorkbook.SaveAs ThisWorkbook.Path & "\" & Format(Now, "yyyymmdd") & ".xls"
End Sub
[attach]16978[/attach]
作者:
macacajau
時間:
2013-12-6 11:57
回復
7#
wl02353427
大大你好~
請問那兩個都是要寫程式嗎?
這樣就會自動另存一個新檔嗎?
以下程式放在 ThisWorkbook 的 Open 內
Private Sub Workbook_Open()
Application.OnTime TimeValue("17:00:00"), "Module1.AutoSave"
End Sub
感謝大大的回覆~ 謝謝!
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)