• ベストアンサー

Excel VBAで「プログラム実行」ボタンと「プログラム停止」ボタンをつけたい

incho0922の回答

  • incho0922
  • ベストアンサー率41% (84/204)
回答No.7

停止ボタンプロシージャに Stop を書いておけば、とりあえずは止まるような気がします。但し、画面がVB Editorになってしまいますが。 あと、そのとき動いている処理に別の処理(停止ボタンをクリックした時の処理)を割り込ませるために、DoEventsを書いておく必要があるでしょうね。 でも、画面がVB Editorになるのはスマートではないですから、もっと別の仕組みを考える必要があります。 停止ボタンプロシージャで、グローバルな変数の値を変化させて、止めたい処理を定義しているプロシージャ内では、その変数が変化したら処理を止めるように定義しておくとか。 いずれにしても、停止ボタンを作ってそのプロシージャを定義するだけでは、正しく動くプログラムはできないでしょうね。

noname#101292
質問者

お礼

ありがとうございました。 お礼が遅くなりすみませんでした。 参考にさせていただきます。

関連するQ&A

  • エクセルVBAが対応できるプログラムの大きさ

     エクセルVBAでプログラムの行数が2000行近くになるとプロシージャが大きすぎますとなり、実行できません。これには対処する方法はあるでしょうか。また、エクセル2013ではもっと大きなプロシージャにも対応しているのでしょうか。  よろしくお願いいたします。

  • EXCEL VBA 自動でプログラムの実行できますか

    EXCELのVBAでタイマー等を使用して一定の時間がきたら プログラムを実行させたいのですが、教えて下さい。 宜しくお願いします。

  • Excel VBA から外部プログラムを実行し結果を利用するには?

    Excel VBA から外部プログラム(例えば、Perl)を実行し、 その実行結果をVBAプログラム中で利用する方法を教えて ください。 より具体的にやりたいことを書きますと、 Perlでインターネット上の情報(数字)を取ってきて、 その情報をVBAで利用したいのですが。。。 よろしくお願いします。

  • VBAで他のBOOKのマクロの実行

    VBAの初心者です。 ExcelのVBAで他のBOOKに記載された標準モジュールのプロシージャを実行するにはどのようにコーディングすればよいのでしょうか?

  • VBAを実行しないと開けないエクセルファイル

    タイトルのようなエクセルファイルを作りたいです。 閲覧者がVBAの実行を認めない限り、閲覧不可にしたいのです。もし認めない場合はメッセージボックス等で「開くことができません」と表示され、エクセルが閉じるようにしたいです。 どのようなVBAのプログラムを組めば実行できますか?

  • エクセルVBAの一時停止後、 入力し再実行したい

    エクセルVBAでオートフィルター実行後に一時停止し、オートフィルターで選んだエクセルシート上のセルに直接入力た後、マクロを再実行させたい。 Sub Macro1() ' ' Macro1 Macro ' マクロ記録日 : 2008/3/2 '製品コードより枠番を選ぶ Selection.AutoFilter Field:=12, Criteria1:="=?????1*", Operator:=xlAnd 'ここで一時停止し、エクセルシート上で入力した後、次の行を実行したい Selection.AutoFilter Field:=12, Criteria1:="=?????2*", Operator:=xlAnd 'ここで一時停止し、エクセルシート上で入力した後、次の行を実行したい Range("A1").Select End Sub

  • VBAで作成したボタンが押せない

    WIN2000でEXCEL2000を使用しています。 エクセルのVBAでダイアログを作成しその中に オートシェイプの四角形ボタンを作成しました。 そのボタンを押すとマクロが実行されるように しています。 しかし、私のPCではボタンを押したら実行できるのに 他のPCではボタンを押しても実行されないPCも あります。他のPCもOS、EXCELは同じものです。 なぜこのような事が起きるのか教えてください。

  • エクセルを閉じる時のVBAのプログラム

    エクセルを閉じる時に実行するVBAのプログラムを記述する時は、 どのように記述すれば良いのでしょうか?

  • たまにマクロを実行できないときがある

    Excel VBAを使っていて、 たまにマクロを実行できないときがあります。 特にデバッグ途中というわけでもないのに、 マクロで実行したいプログラムを選択しても実行ボタンがグレー色になっており 実行することができません。 全てのプログラムではなく、実行途中に変な操作が入り、 停止したものだけです。 excelを再起動すると元に戻ります。 これはどういう状態にあるのでしょうか? 再起動せずに復帰する方法を教えてください。

  • エクセルVBAの実行保護について教えてください。

    エクセル2000VBAで構文を複数作り、シート上にボタンを配置し実行させたいと思います。 (パスワードで保護させて、VBAの構文は管理者以外に見えないようにしました) その複数のマクロの中には、実行させたくないものもあります。(管理者のみが行うマクロ) シート上のボタンで配置したもののみ実行可能にして、「ツール」-「マクロ」から誰でも実行させないような方法を教えてください。 つたない説明で申し訳ありませんが、ご理解いただけたでしょうか? よろしくお願い致します。