• ベストアンサー

エクセルのマクロ 回数分ループさせたい!

VBA初心者です。よろしくお願いします。 エクセルの〝マクロの記録〟で作成したマクロ(マクロ名:オレンジジュース)を10回ループさせたいとき、どのように記述したらできるでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

Dim LoopCounter As Integer For LoopCounter = 1 To 10 Call オレンジジュース Next LoopCounter

c7_d30ea200
質問者

お礼

回答ありがとうございます。とても助かりました><

その他の回答 (1)

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

sub macro1()  dim i as long  for i = 1 to 10   オレンジジュース  next i end sub 通常マクロの作成に当たっては、漫然とただ「10回」じゃなく、「今は一体何回実行すればいいのかを、どこをどー調べてどう勘定したらいいのか」事実(=あなたの実際のエクセル。あなたのキモチとは無関係に)に即して考えるのがキモになります。 勿論それが結果して「常に10回」と決まってるなら、それならそれでOKですが。

c7_d30ea200
質問者

お礼

回答ありがとうございます。本当はアクティブセルが空白になるまで実行したいところですが今のところ私の中ではそこまで需要がないところと、あまり長くなってしまうと理解できなくなってしまうので少しづつ覚えていきたいと思います。

関連するQ&A

  • エクセル マクロ ループの使い方

    超初心者です。よろしくお願いします。 以前にループのやり方を教えていただきました。 Sub ループ() Dim i As Long For i = 1 To 10 マクロ名 Next i End Sub この10回という回数の部分を変更したいと思うのですが、ここをセルA1に入力されている数字の回数分だけループを繰り返すという仕組みにしたいのですが、どのように書いたらよいでしょうか。

  • Excelマクロ

    50枚くらいの別々のExcelスプレッドシート(別ブック)に入っている様々な文字列を変更したいと思っています。 (例えば、rose→daisy, pink→red, apple→orangeなど) この場合、この一連の「置換」を使った操作をマクロに記録させ、そのマクロを別のブックに入っているスプレッドシートにも適用することはできますか? 聞いたところでは、「マクロの記録」で記録されたマクロは、VBAで編集できるとのことなのですが、 そのVBAは、エクセルのどこから取得することができるのでしょう? そのVBAを別のスプレッドシートに都度コピーペーストすることにより、あるスプレッドシートに記録されたマクロを他のスプレッドシートに記録することはできますか? また、この方法がワークしない場合、別のやり方で目的を達成することはできますでしょうか? どなたかどうぞお知恵をお授け下さい。宜しくお願いいたします。

  • Excel 2007のマクロ記録について

    Excel 2007のマクロ記録は、詳細はできないのでしょうか。 Excel 2000では、かなり詳細まで記述してくれますが、Excel 2007で同じことを 行っても、記述がありません。グラフの枠や、色などを変えるマクロを試してみましたが、記述されませんでした。  なにか、設定が不足しているのでしょうか このままだと、Excel 20007はVBAが使えないマクロとなりそうです。 どなたか、ご存じの方ご指導をお願いいたします。  マイクロソフトに問い合わせたら、有償相談だそうです。詳細内容を聞くのではなく、Excel2000と同じかどうか聞くだけでもですって。理不尽だと思います。

  • エクセルマクロ 異なるファイル名でも実行してくれるマクロ

    マクロ初心者です。よろしくお願いします。 ファイル名はすべて例えです。 「A」エクセルファイルを 「Z」というファイルに貼り付けるマクロを作りました。 そのマクロで「B」ファイルからも「C」ファイルからも 「Z」ファイルにコピーをしなくてはいけないのですが VBAには「A」で記録されているため 「B」と「C」にはそのマクロが使えません・・・。 VBAをどのようにデバックすればいいのでしょうか?

  • マクロ セルに記載された回数をループさせたい

    セルに記載されたマクロをループさせたいと思っているのですが どうしたらいいのか分からなかったので質問させていただきます。 下の記述ですと「CommandButton1」に記載したマクロを5回繰り返し 終了となるのですが、たとえばSheet1のA1に入れた数値分だけ 繰り返すマクロを組む場合どのように記述したら良いでしょうか? <記述マクロ> Dim myCnt As Long myCnt = 1 Do Until myCnt > 5 CommandButton1.Value = True myCnt = myCnt + 1 Loop よろしくお願いします。

  • Excelマクロ/ファイル名を指定してインポート

    テキストファイルからExcelへインポートする作業を自動化させたいのですが。 毎回インポート元のファイル名(格納しているフォルダは同じです)が異なるので、マクロ記録ではうまく作成できません。VBAでないと無理でしょうか? できればファイル名をその都度入力するようなダイアログボックスが表示されれば理想的です。VBA初心者なので教えてください。

  • エクセル マクロ

    マクロ初心者です。 マクロに記録させたい手順が長く、途中でミスすることがあり困っています。 手順の記録を途中まで行なって一旦記録し、またその続きから記録するようなことは出来ますか? もしくは、手順をいくつかの行程に分けてマクロ記録し、それらをドッキングさせて一つのマクロにするようなことは出来ますか? ちなみにVBAは全く分からないので使えません。 よろしくお願いします。

  • EXCEL マクロの記録で並べ替えのマクロをつくるとそのシートでしか使えないのでしょうか?

    EXCEL マクロの記録で並べ替えのマクロをつくるとそのシートでしか使えないのでしょうか? EXCEL2007を使っています。 マクロの記録で並べ替えのマクロをつくるとそのシートでしか使えないのでしょうか? シート1 1 3 2 というデータを「マクロの記録」で昇順に並べ替えるマクロを作成します。 シート2 3 5 4 というデータに適用したいのですが、マクロを実行するとシート1のデータが 並べ替えられてしまいます。 マクロを読むと「シート1」という記述があるのでシート1にしか適用できないようです。 マクロの記録だけで別のシートにも適用できるマクロを作成できないでしょうか? (ただの並べ替えだけだったらマクロを作成する必要はないのですが、実際にはもっと複雑な 動作をさせたいのです)

  • エクセルマクロ 異なる変数でのループ

    エクセルマクロのループ処理に関して、 異なった変数を使いループをさせたいです。 例えばA~Dまでの変数があり、変数Zに順々に変数を代入して処理をさせたいです。 ループ開始 Z = [A-D] (変数Zを使う処理) ループ終了(繰り返し) 1回目にA 2回目にB ・ ・ といったイメージです。 初歩的な質問で恐れ入ります。 よろしくお願いします。

  • ループマクロ起動時に他のエクセルファイルが起動できない

    VBAでメインループをずっとループさせ、 データが送られてきたらそれを受け取り処理をするマクロを作っています。 Do DoEvents Sleep 1 データが送られてきていれば処理 Loop という風にしているのですが、このマクロを起動中だと他のエクセルファイルが開けないのです。 他のファイルをダブルクリックしても、起動中のこのマクロのエクセルが前面にくるだけです。 なにか特別な処理をループ中にいれなければならないのでしょうか?

専門家に質問してみよう