我试图自动保存csv open excel
每秒它工作正常,但问题是每次保存,如果我打开2 excel或相同的文件它出现并消失我想保存它我不知道怎么做的背景我Application.DisplayAlerts = False
ad false仍然无效。
Sub SaveThis()
Application.DisplayAlerts = False
ThisWorkbook.Save
Application.DisplayAlerts = False
Application.OnTime Now + TimeValue("00:00:01"), "SaveThis"
End Sub
更新代码
Sub SaveThis()
Application.DisplayAlerts = False
Application.EnableEvents = False
ThisWorkbook.Save
Application.DisplayAlerts = True
Application.EnableEvents = True
Application.OnTime Now + TimeValue("00:00:01"), "SaveThis"
End Sub
答案 0 :(得分:1)
试试这段代码。
With ThisWorkbook
If Not .Saved Then .Save
End With
这个想法是硬件不能按照你要求的速度跟进。此代码会将保存频率降低到更改频率。因此,如果以每秒一个的速率进行更改,代码将无法解决问题。
但是,除非您希望系统崩溃,否则Excel自身的自动恢复会创建备份,因此没有太多理由经常保存工作簿。另一种可能性是您可能希望每秒更改单独的更改副本。你的代码没有尝试,我怀疑你的硬件可以跟上。
因此,即使您每秒多次修改工作簿,也可以以更长的间隔保存它。请记住,保存的目的是保护数据。以你提出的方式强调硬件更有可能危及它们。