エクセルで質問です。

A列にそれぞれ「あ」「い」「う」の行が入っています。
データの間にコピーした行を一行挿入して「あ」「あ」「い」「い」「う」「う」
の状態にしたいのですが、量が多いため、データの間にコピーした行を挿入するマクロを教えてください。
下記のデータの間に空白行を挿入するマクロまでは何とかたどりつきました。

Sub test()
Dim i As Long
Const myCol = 1 'A
'
For i = Cells(Rows.Count, myCol).End(xlUp).Row To 2 Step -1
Rows(i).Insert
Next i
End Sub

回答の条件
  • 1人3回まで
  • 登録:2007/12/01 13:18:51
  • 終了:2007/12/08 13:20:03

回答(2件)

id:SALINGER No.1

SALINGER回答回数3454ベストアンサー獲得回数9692007/12/01 13:47:24

ポイント35pt

そのコードから改良すると

Sub test()
    Dim i As Long
    Const myCol = 1 'A
    For i = Cells(Rows.Count, myCol).End(xlUp).Row To 1 Step -1
        Rows(i + 1).Insert
        Rows(i).Copy (Rows(i + 1))
    Next i
End Sub
id:st004j

これで出来ました。ありがとうございます!

2007/12/01 17:00:03
id:Mook No.2

Mook回答回数1312ベストアンサー獲得回数3912007/12/01 13:47:34

ポイント35pt

目的はほとんどご自身で出来ていると思いますすが、

コピーしたいのはA列のデータだけなのでしょうか?行全体なのでしょうか?

Sub test()
    Dim i As Long
    Const myCol = 1 'A
    '
    For i = Cells(Rows.Count, myCol).End(xlUp).Row To 2 Step -1
        Rows(i + 1).Insert
' --- A列のみのコピー
        Cells(i + 1, myCol).Value = Cells(i, myCol).Value
' --- 行全体のコピー
'        Rows(i).Copy Destination:=Rows(i + 1)
    Next i
End Sub

後者の場合は、コメントを切り替えてお試しください。

id:st004j

コピーしたいのはA列のデータのみでした。ありがとうございます!

2007/12/01 17:04:33

コメントはまだありません

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

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

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

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