2012-06-30 2094 views

答えて

28

私のコメントに加えて、DoEventsはApplication.CalculationStateで使用できます。あなたはまた、私もこのリンクを参照推薦Application.CalculationState

をチェックするためにDo While Loopを使用することができますしたい場合は、この例

Application.Calculate 
If Not Application.CalculationState = xlDone Then 
    DoEvents 
End If 
'~~> Rest of the code. 

を参照してください

トピック:Application.CalculationStateプロパティ

リンクhttp://msdn.microsoft.com/en-us/library/bb220901%28v=office.12%29.aspx

上記のリンクからの引用

は、Microsoft Excelで実行されているすべての計算のために、アプリケーションの計算状態を示しXlCalculationState定数を返します。読み取り専用。

+0

+1すてきな答えSid。 – brettdj

+0

それはまさにポイントだった、ありがとう! –

+4

私はインターネット上で一般的に提供されているので、私はこのサンプルコードに頼っていましたが、動作しません。 DoEventsは計算が完了するまでブロックしませんが、実際にはサンプルコードでは何もしません。 – user65

0

私は、計算ループが途中でロックする問題を解決するためにコードを使用しました。次の値セットを入力する前に、計算が完了するまで待つ必要があったためだと思いました。 Application.Calculateコードを挿入すると、問題が解決しました。ループが完了するまで実行されます。

関連する問題