2

VBA マクロの実行を一時停止し、ユーザーがキーを押すのを待ってから続行したいと考えています。これを達成する簡単な方法はありますか、それともウィンドウのポップアップを使用した方がよいでしょうか?

4

1 に答える 1

3

警告: 私の経験では、VBA に特に DoEvents ステートメントが含まれていない限り、VBA の実行中に Office アプリケーションは応答しません。

ユーザーの準備が整うまで一時的にプロセスを中断したい場合は、ポップアップを使用するのが最も簡単な方法です。

次のようなものを追加すると、望ましい結果が得られます。

Msgbox "Click to go on", , "Example"

ユーザーはクリックして続行するか、Enter キーまたはスペースを押します。

より具体的なポップアップが必要な場合は、モーダル ユーザー フォーム (Excel の場合) またはモーダル フォーム (Access の場合) をコードから読み込むと、フォームが閉じられるまで呼び出し元のコードの中断が停止します。

正直なところ、絶対に必要でない限り、一時停止を含めることには抵抗があります。不必要な中断は煩わしく、効率を妨げます。何が起こっているかを単にユーザーに通知したい場合は、画面を更新して、アクションを実行するときにコードが何をしているかを説明できます。

于 2012-07-12T20:14:48.750 に答える