- ベストアンサー
Excel2010 VBA
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは 非常に分かりにくいですけど、 Sub test() Dim r As Range Dim i As Long Rows("4:4").Copy Range("A2") i = 1 For Each r In Rows("2:2").SpecialCells(xlCellTypeConstants) r.Interior.Color = r.Offset(1).Interior.Color If r.Value <> "" And r.Offset(1).Value <> "" Then r.Value = r.Offset(1).Value Else r.Value = r.Offset(1).End(xlToLeft).Value End If If r.Value <> "" Then r.Offset(-1).Value = "Q" & i i = i + 1 End If Next Rows("2:2").Copy Range("A3") Rows("2:2").Clear End Sub こんな感じですか? テストデータで試して下さい。
お礼
ありがとうございます。 質問してから画像の見にくさに気づきました。
補足
A列始まりだとできましたが、Rangeのところを O列にしたらできないのはなぜですか