http://q.hatena.ne.jp/1245772843

エクセルに空行を入れるということを教えていただきました。

1行追加ではなくて、AからFまでに空行を入れる形に
変更したいのですが可能でしょうか?

勉強のためにも、
回答の「3」もしくは「4」を
アレンジしていただけるとうれしいです。

どうぞよろしくお願いいたします。

回答の条件
  • 1人2回まで
  • 登録:2009/07/24 22:18:13
  • 終了:2009/07/25 01:28:37

回答(1件)

id:Mook No.1

Mook回答回数1312ベストアンサー獲得回数3912009/07/24 23:37:52

ポイント200pt
    Rows(r).Insert

の部分を

    Cells(r, "A").Resize(1, 6).Insert xlDown

に変えてみてどうでしょうか。

id:ohtsu6

出来ました。

どうもありがとうございます。

2009/07/25 01:28:22
  • id:Mook
    たくさんポイントありがとうございます。

    >勉強のためにも
    ということで少し補足。

    範囲の表し方はいくつかあり、
      Range(Cells(r,"A"),Cells(r,"F"))
      Range("A" & r & ":F" & r )
    なども r 行の A列~F列を表します。

    今回のは A列 r行を起点とし、そこから Resize によって 1行6列に範囲を変更しています。
    上記と同様、下記も同じ範囲を示します。
      Range("A" & r).Resize(1, 6)

    これらの範囲に対し、Insert メソッド(挿入)を実行します。シフト方向を指定したい場合は
      下方向は xlDown
      右方向は xlToRight
    を引数に指定します。デフォルトは下方向へなのでこの場合は指定しなくとも構いません。
      objRange.Insert xlDown
      objRange.Insert xlToRight

    Insert は Shift オプションしかないので、このままでも構いませんが下記のように書いても同じ意味です。
      objRange.Insert Shift:=xlDown
      objRange.Insert Shift:=xlToRight

    オプションが複数ある場合には、パラメータは順番に依存するので引数の順番を正確に書くか、
    上記のように指定する引数を明示します。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません