• 締切済み

エクセルでマクロ実行中に任意の場所で一時停止させたい

エクセルでマクロを使用しています。 インターネットで外部から数値データを取ってきて、それから表を作るのを数十回繰り返します。 今の状態ではマクロが終了するまで繰り返して2分くらいかかります。 途中で表示した表をゆっくり見たいと思うときがありますが止めることができません。 どこかをクリックすると動作中のマクロの途中で一時停止し、再度クリックすると一時停止が終わるような動作をさせることはできないでしょうか? 一時停止したいところは一定ではありません。

みんなの回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.4

こんにちは。 #1さんのでもよいと思いますが、 VB Editor のエディタペインの左枠の所をクリックすれば、●がついて、ブレークポイントになりますから、その直前で止まります。 後は、ウォッチ式で条件によって止めるという方法もありますね。

  • o_chi_chi
  • ベストアンサー率45% (131/287)
回答No.3

#1です。 ループ中にというのは、1000回ループのたとえば500回目 という意味でしょうか? だとしたら If ループ変数 = 500 Then Stop End If みたいにストップを作るのも一つの手だと 思います。 あとデバッグの中にステップインとか カーソル行の前まで実行とかあるので 試してみてください。

  • ppl55
  • ベストアンサー率27% (11/40)
回答No.2

「Ctrl」ボタンを押しながら「Pause/Break」ボタンを 押すと処理が止まると思います。 それで「継続」、「終了」がボタンで選べます。

  • o_chi_chi
  • ベストアンサー率45% (131/287)
回答No.1

一時停止したいところにカーソルを持っていき デバッグ→ブレークポイントの設定/解除 を選択すると左端に赤の丸がつき行が赤反転します 実行するとそこで一時停止します。 再開は右向きの▲マークで再開します。

123isao
質問者

補足

ループ中に一時停止したいのは一定の場所ではありません。 マクロの動作で描かれる表を見ながら停止するかしないかを決定したいです。 ブレークポイントを入れてしまうとループごとに必ず停止してしまいます。

関連するQ&A

  • エクセル2003 でマクロの実行中に一時停止

    エクセル2003でマクロの実行中に一時停止して手入力し終わったらマクロを続行させたい

  • エクセル、マクロを指定した時間帯だけ一時停止したい

    エクセルのマクロを永久にループさせているのですが、指定した時間帯だけマクロを一時停止したいのですがやり方がわかりません、よろしくお願いします。 17時~20時まで一時停止しているような感じです

  • エクセルのマクロの実行が途中で止まってしまいます。

    エクセルで表を作る工程をマクロで記録させて、その後、マクロを実行して特定の表を作ろうと思っても、実行の途中で止まってしまいます。特に、列の幅を変更せずに、途中でとまってしまいます。マクロを使って表を作りたい理由は、エクセル以外のあるデータをエクセルに移動することがよくあって、移動させた直後はエクセルの標準の形式として表になっているので、列幅を変更したり、フォントを変更したり、列の順番を入れ替えたりすることを、自動でおこないたいのです。どなたか教えてください。パソコンのメモリか何かのもんだいですか?わからなくてほんとにこまっています。どなたか教えてください.よろしくおねがいします。

  • VBAの一時停止

    エクセルのVBA の実行中に途中で一定時間(例えば10秒とか) 一時停止して その後再開するようなことが出来ますか またそのコマンドは何を使えばいいでしょうか 宜しくお願いします。

  • エクセル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

  • エクセルからワードのマクロを実行したい

    1. ワードで作られた報告書の表の数値をエクセルにコピーし、 2. その数値を使ってエクセルのオートシェイプでグラフを描き、 3. グラフをもう一度ワードの所定の位置に図として貼りつける、 というマクロを作成しています。ワードの表をコピーするマクロと、エクセルでグラフを描くマクロは作成できました。 問題はエクセルのシートに配置したコマンドボタンをクリックすると、グラフの入ったセル範囲をコピーするまではできたのですが、その後にワードのマクロを指定して実行させる方法がわかりません。 1.→2.のエクセルのマクロを実行する方はauto_openで何とかなったのですが、2.→3.は既にワード文書は開かれていますし、auto_openでは1.の手順ができなくなってしまうので困っています。 もし、エクセルのマクロでワードを操作などできるのでしたらそれでもよいのですが…。 ワードのマクロは初挑戦で、色々サイトも探したのですが見つかりませんでした…。 使用していますのは、Windows98SE,Excel97,Word97です。 ご存知の方、どうぞよろしくお願い致します。

  • マクロでマクロを削除、または停止させるには?

     1つのExcelファイルからマクロを走らせて、複数のExcelファイルにあるデータを集めたいと思っています。 ただ、複数のExcelファイルは、ファイルを閉じる際にマクロが走るようになっているので、このマクロが走らないようにして、データを集めたいです。  そこで、実現したいのは、1つのExcelファイルから集計用のマクロを走らせる時に、複数のExcelファイルに設定してあるマクロを削除するか、あるいは、マクロを停止させたいです。  ちなみに、複数のExcelファイルを開いた後、閉じないことにより、マクロを走らせないようにして、集計を行うマクロを試しましたが、開いたままのファイル数が多いようで、途中でエラーが出て止まってしまいます。  アドバイスをお願いいたします。

  • エクセルのマクロ(検索)

    お世話になります。 エクセルのマクロで以下の処理をしたいのですがアドバイスください。 Excel2002です。 以下は実際の作業を簡略化したものです。 F列が●●という文字列で、かつE列が空白以外の行を検索した結果、 →対象行がない場合、【対象行はありません】というメッセージボックスを出し、OKをクリックしてマクロを終了させる →ある場合、1行目にオートフィルタを設定し、F列が●●という文字列で、かつE列が空白以外の行を表示させる(オートフィルタの機能で)ここでマクロの動作を一時停止させ、【続行】or【終了】が選択できるメッセージボックスを表示させる。 ここで【終了】をクリックすればマクロを終了させる。 【続行】をクリックすれば、いまオートフィルタで表示されている行のD列を値をすべて-1に変更する。次にオートフィルタを解除し、F列にある●●というセルをすべてクリア(空白)しマクロを終了させる。 アドバイスお願いします。

  • Excelのマクロが実行されない

    Excelを立ち上げ、VBEでThisWorkbookに以下のマクロを記述します。 Dim WithEvents a As Workbook, WithEvents b As Workbook, WithEvents c As Workbook, WithEvents d As Workbook Private Sub Workbook_Open() Stop End Sub ファイルを保存してから起動し、マクロを有効にすると Stop で停止します。 ここで一旦 Stop を削除してから再度 Stop を挿入してから保存します。 再びこのファイルを起動し、マクロを有効にしても Stop で停止しません。 今回は簡単のため Stop にしていますが、実際には起動時の処理が実行されないため困っています。 OSはWindows7,Excelは2007です。

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

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

専門家に質問してみよう