2017-06-10 7 views
0

私はcsv open excelを毎秒自動保存しようとしていますが、問題なく保存されています。私はApplication.DisplayAlerts = False広告偽はまだ働かなかったそれを行う方法がわからない背景にそれを保存します。VBA停止リフレッシュは自動保存に優れています

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

また '.EnableEvents'を使用してください – 0m3r

+0

私はまだ同じことが起きています – Shaik

+0

毎秒保存したいのですか?ファイルが変更されたときに保存するのはどうですか? – Jaycal

答えて

1

は、このコードを試してみてください。

With ThisWorkbook 
    If Not .Saved Then .Save 
End With 

ハードウェアが要求するスピードではフォローできないという考えがあります。このコードは、保存の頻度を変更の頻度に遅くします。したがって、毎秒1秒の割合で変化がある場合、コードは問題を解決しません。

しかし、システムのクラッシュが予想される場合を除き、ワークブックを頻繁に保存する理由はありません。この場合、Excel自身の自動回復によってバックアップが作成されます。もう1つの可能性は、1秒ごとに変更のコピーを個別に作成することです。あなたのコードはそれを試していないので、あなたのハードウェアが追いつくことはできません。

したがって、ブックを1秒に数回変更しても、もっと長い間隔で保存するだけで十分です。節約の目的はデータを保護することです。あなたが提案する方法でハードウェアを強調することは、それらを危険にさらす可能性がより高いです。

関連する問題