2017-10-10 18 views
0

非常に簡単なことに、ワークブック(外部データを含む3つのテーブルのみ)をすべて最新のものに更新し、5分ごとに保存する必要があります。私は現在、自動車を実行しているワークブックを介して、5分ごとに保存してい :Excel VBA:すべてを最新のものに更新して保存する

Sub SaveWb() 
    ThisWorkbook.Save 
    Application.OnTime Now + TimeValue("00:05:00"), "SaveWb" 
End Sub 

&

Private Sub Workbook_Open() 
    Application.OnTime Now + TimeValue("00:05:00"), "SaveWb" 
End Sub 

とテーブルが5分でバックグラウンドの自動リフレッシュの接続プロパティを使用して更新します。 はしかし、私はExcelが促す問題に走り続けた:

「これは、保留中のデータの更新がキャンセルされます続行し、[OK]、[キャンセル]。?」

を私は実行中のリフレッシュを持つことができる場合、私は疑問に思いますVBAも同様に、リフレッシュを維持しなくてもうまく動作できます。これはwb.RefreshAll機能では簡単な仕事のようですが、私の存在しないvbaスキルでは、一緒に置くことができません....

何か助けてくれてありがとうございます!

答えて

0

私は、コードの一部を編集することで、少しして実験していないと、それが動作するようになりました:

Sub SaveWb() 
    ThisWorkbook.RefreshAll 
    ThisWorkbook.Save 
    Application.OnTime Now + TimeValue("00:05:00"), "SaveWb" 
End Sub 

これ以上の「これは、保留中のデータ更新がキャンセルされます続行します。?」

関連する問題