• 締切済み

VBAで特定行へのコピーを指定した回数繰り返す処理をしたいが。

行2を行1へ、コピー&ペーストする。 行3を行1へ、コピー&ペーストする。 行4を行1へ、… というように、行1へのコピー&ペーストを、指定した回数行う、 という処理をVBAのコードで書きたいのですが、本をみてもよくわかりません。 回数の指定は、特定セルに入力した値を取得するような形でやりたいのです。 具体的に、こう書けばできるよ、といった回答をお願いいたします。

みんなの回答

  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.1

こういうことでしょうか・・・ Sub RowCopys()   Dim rw As Long '行カウンタ   Dim copyCot As Long 'コピーする回数(A30にセットされているとする)   copyCot = Range("A30")   For rw = 1 To copyCot     Rows(rw + 1).Copy Destination:=Rows(1)   Next End Sub

houston
質問者

お礼

本みながら、悪戦苦闘していたら、GETValue とDo Loop Untilとを組み合わせて、何とかできるようになりました。 今回は、良回答のポイントを差し上げられないのですが、がんばる気を起こさせていただいたので感謝しております。また次回質問の際には、どうぞよろしくアドバイスお願いいたします。

houston
質問者

補足

早々にご回答ありがとうございます。 さっそく実行してみたのですが、Excelのシートに何の変化も起こりませんでした。 何か実行の仕方が間違っていたのでしょうか?

関連するQ&A

  • エクセルVBAでコピーすると行の高さが低くなる

    いつもお世話になってます。 エクセル2003のVBAで、セルの範囲を指定してコピーすると行の高さが低くなってしまいます。その他の書式は、変化せずうまくコピーできています。以下がプログラムです。 Sub copy_hyou() Worksheets("sheet1").Activate Range("A1:K24").Copy 'セルA1からK24をコピーします。 Range("A25").Select 'A25からペイストします。 ActiveSheet.Paste End Sub どう直せば、行の高さもコピーできるでしょうか? お休み中すみませんがよろしくお願いいたします。

  • エクセルVBA 指定したセルの行を指定したい

    エクセルVBAで、指定したセルの行をコピーして、コピーしたセルの挿入をしたいです。 どのような文章で、書けばいいでしょうか;; よろしくお願いいたします

  • VBA_取消線のある行を検索、その行に操作を加える

    取消線のある行を検索して、その行に操作を加えるといったVBAを組みたいです。 ①表のB列の最終行を取得する ②B列の13行目から最終行まで④⑤の処理を繰り返す ③取消線のある行を検索する。(行No.を取得?) ④例えば13列目が取消線該当なら   その行に入力されている内容をコピー&枠外にペースト(P)  B13,C13,G13,I13,J13,K13,L13,M13,N13をコピーする。  R13にペースト(P) ⑤コピー元のセルを空欄にする_B13,C13,G13,I13,J13,K13,L13,M13,N13 といった流れにしたいのですが、③~が分かりません。 ③の"取消線がある行を取得"というよりは、 取消線がなければスルー、取消線があれば④⑤の処理をする流れの方が良いでしょうか。

  • 【VBA】特定の条件でセルをコピー

    VBA初心者です 特定の条件を満たすセルの隣接する指定のセルをコピーして別のシートへ貼付けたいです 【sheet1】 A   B   C   ~   F  G 1   2   あ   ~   3  あり 2   1   い   ~   7  なし 3   2   う   ~   4  あり 5   3   え   ~   6  あり 6   2   お   ~   5  なし 7   1   か   ~   3  あり 8   3   き   ~   7  なし 9   2   く    ~  8  なし といったデータのうち、G列が「あり」の行の C~Fの値を別のシートへ以下のように貼り付けたいです 【sheet2】 A   ~   D  E あ   ~   3  _ う   ~   4  _ え   ~   6  _ か   ~   3  _ 全くの初心者です よろしくお願いします

  • 【VBA】コピー&複数個所のペースト繰り返し

    前回と同じ質問ですが、説明が足りなかったので画像を添付いたしました。 添付画像のように、1つの値をコピーし、別シートの複数個所(同じ列の違う行)へ順次ペーストしたいのですが、貼付けデータやペーストする回数が増えた場合でも対応できるようなVBAを教えてください。 コピペする条件としては、MsgBox関数を使い「コピーするか?」で「はい」を選択すると、任意のセルにデータがコピペされます。 よろしくおねがいいたします。

  • EXCEL VBAでのセル高の範囲指定コピーについて

    いつも活用させて頂いております。 ExcelのVBAで、範囲指定したセルのコピーを行い、コピー先のセルに コピー元のセルの高さをコピーさせるロジックを組みました。 始めは、範囲指定してセル高もコピーしようとしたのですが、 上手く行かなかったので、現在は、ループさせて1行ずつ行っています。 できれば、範囲指定して一括で行いたいのですが、 そのような事は可能なのでしょうか? ご教授願います。

  • Excel 行又は列単位で… 処理重い

    Excel2007 処理が重くなって困ってます。 行幅や列幅、セル書式などを移すのに 条件を指定してコピー よく使うのですが 列、または行をコピー元としたペーストをすると 途端に処理が重くなります。 不使用セルを全て 行単位、列単位で 内容削除でなく、セル削除し 一旦保存してExcelを終了 開き直しても変わりません。 以前2003から乗り換えた環境時は 直前の変更に関連しないセルの演算、 つまり、すでに演算が一度終わっていて 変化する可能性が少ないセルの演算 これを省略してくれているように感じていたのですが、 今回、この機能が切れているように感じます。 行、又は列をコピー元としたペーストを利用しつつ 処理の鈍重化を防ぐ対策、 ご教示をお願いします。 有効な設定等ありますでしょうか…

  • EXCEL VBAによる他アプリケーションへのコピーアンドペーストについて

    EXCEL VBAにおいてセルにある値をコピーし、他のアプリケーション(Tera Term Pro)へペーストする場合、文字列+Enterが入ってしまい、次の行へと移ってしまいます。そうではなく文字列のみをペーストしたいのですがどうやっていいか分かりません>< どうか是非教えてください。よろしくお願いします!

  • EXCEL VBA コントロールのコピー&ペースト

    いつも活用させて頂いております。 excelのvbaで、コピー元のセルを範囲指定して、ペーストするロジックを書いています。 コピー元のセルには、コントロール(テキストボックスなど)が配置されているのですが、これを一緒にコピー&ペーストする事はできないでしょうか? 一緒にできないのであれば、セルのコピー&ペーストのあとにコントロールのコピー&ペーストができるような方法があれば、ご教授願います。 よろしくお願い致します。

  • VBA コピー&ペースト

    次の作業をVBAでマクロを組みたいのですが、どのような構文にすればよいでしょうか。VBA初心者のため、お知恵を拝借させてください。 [目的] 1.ブックA(コピー先)に設定したハイパーリンク先のブックB(コピー元)へジャンプ 2.ブックBへジャンプ後、特定のセルの値をコピー 3.コピーした値をブックAの特定セルへペースト 4. 1.~3.の作業をリピート 対象は、上の作業が未完(ブックAのペースト先のセルがブランク)のもの [詳細] ・ブックB(リンク先)の保存先はサーバー ・リンク先はブックBの特定のシート ・ブックAで設定したハイパーリンクのセルの値がリンク先のシート名 ・ブックBは複数、リンク先のシートも複数(ハイパーリンクごとにリンク先が異なる) ・ブックBにはマクロが設定、開くたびにマクロ有効無効のメッセージ(Excel2003のため) ・コピペする項目は3つ ・ブックA,Bともに開いた状態で、2.~4.のリピートというマクロでも構いません。 以上ですが、他に情報が必要でしたらお申しつけください。 よろしくお願いいたします。

専門家に質問してみよう