私は1つのボタンをクリックすることができるコードをいくつか作成しており、そのシートにあるクエリテーブルを更新します。Excel vbaリフレッシュ待機
私の問題は、情報の一部をコピーして新鮮なコードを残していることですが、このコードはリフレッシュが開始され、情報がまだ置き換えられていない直後に実行されています。
リフレッシュが完了するまで待ち時間を作成し、残りのコードを続行できます。
私はインターネット等速度に応じて、長すぎるまたは短すぎる待っているわけではないように私は私がこれをどのように行うことができます
、わずか5秒のためではなく、さわやかな期間を待つことしたくないですか?
編集:
シンプルコード:ここで
ActiveWorkbook.RefreshAll
全てのリフレッシュが終了するまで、私は遅延や待機中のコードが必要...次に
MsgBox("The Refreshing is Completed!")
ことで何か方向。しかし、それは実際に終了する前にmsgboxを言うことはできません....ときどきインターネットの速度に応じて、リフレッシュは短くても長くかかるので、私は実際のリフレッシュ時間の変数にしたい。
あなたは非背景リフレッシュを指定するには、 'querytable.refresh false'をを使用していますか? –
これまでのところActiveWorkbook.RefreshAllのみでしたが、リフレッシュが完了したらチェックするループが必要です。それは私がそれを想像したところです – dave123
ActiveWorkbook.querytables.count:ActiveWorkbook.querytables(i).refresh false:next'を個別に '' i = 1のためにリフレッシュすることで、これを行うことができます。 –