• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:マクロについて)

マクロで表の行を挿入する方法

このQ&Aのポイント
  • 初心者の方がマクロを使用して表の最終行の上に行を挿入する方法について質問されています。
  • 具体的なコマンドボタンを押して行を挿入する際に、ウィンドウが表示され、挿入したい行数を入力することで、指定した行数分だけ行が挿入されます。
  • 表の範囲指定はA列からF列までの範囲ですが、マクロ内で範囲指定をうまく行いたいという相談です。

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

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.3

No1です。 >表範囲を指定したいのですが・・ スタートがどこかわかりませんが、"A1"から"F"&rまでとするなら  Range("A1").Resize(r, 6) ただし、行挿入した後だと、範囲が広がっていますので  Range("A1").Resize(r + r2, 6) かな?

nnn4433
質問者

お礼

お礼、おそくなりました。 確かに!です。わかりやすい記述、ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

行全体を挿入するのではなくてある列までに挿入する作業ですね。 次のようにマクロを一部修正すればよいでしょう。 F列は6列目に相当しうますので、 If r2 > 0 Then Range(Cells(r, 1), Cells(r, 6)).Select For i = 1 To r2 Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove Next End If なお、Insert.xDownのみの場合には行が挿入されますのでF列までに行を挿入するのとは違いますね。単に行の挿入であればF列までなどの条件は必要ないでしょう。

nnn4433
質問者

お礼

自分としては、単に行の挿入っていうことで記述していたら・・・列指定の行挿入でしたね(^_^;) いろいろとご教示いただきありがとうございました。 もしよければ、挿入した行の罫線等をそろえるため、表範囲を指定したいのですが・・・(気転きかず、申し訳ございません)どうすればよろしいのでしょうか?ご教示いただければ、幸いです。

すると、全ての回答が全文表示されます。
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

一例です。 Range("A" & r).Resize(r2, 6) (↑A:Fは6列なので、第二引数が6)

nnn4433
質問者

お礼

Resizeを使うと、こうも簡単に・・・助かりました。ありがとうございました。 もしよければ、挿入した行の罫線等をそろえるため、表範囲を指定したいのですが・・・(気転きかず、申し訳ございません)どうすればよろしいのでしょうか?ご教示いただければ、幸いです。

すると、全ての回答が全文表示されます。

関連するQ&A