dポイントプレゼントキャンペーン実施中!

次の横列データを縦列に変換するマクロを、何方か教えていただけますでしょうか。

sheet

マンションA 9:00 11:00 マンションB 11:30 13:00
マンションC 9:00 11:00 マンションD 11:30 13:00
マンションE 9:00 11:00


を以下のように変換

sheet2

マンションA 9:00 11:00
マンションB 11:30 13:00
マンションC 9:00 11:00
マンションD 11:30 13:00
マンションE 9:00 11:00


マンション名と各時間は別セルになります。
sheet1の横は最大6件のマンション名が入ります。

A 回答 (1件)

こんばんは



1行のうち連続する3セルをひとつのセットとみなして、1セット/1行に書き直す例です。
新しいシートに、値のみ転記しますので、セルの書式等は調整していません。
ご参考までに。

Sub Sample_12103451()
Dim ws, rng, rw, col

Set ws = ActiveSheet
Set rng = Worksheets.Add(after:=ws).Cells(1, 1).Resize(, 3)

For rw = 1 To ws.Cells(Rows.Count, 1).End(xlUp).Row
 For col = 1 To ws.Cells(rw, Columns.Count).End(xlToLeft).Column Step 3
  rng.Value = ws.Cells(rw, col).Resize(, 3).Value
  Set rng = rng.Offset(1)
 Next col
Next rw
End Sub
    • good
    • 1
この回答へのお礼

ご回答ありがとうございます。
年末年始のため、年明けに使わせていただきます。

お礼日時:2020/12/28 14:24

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!