ID非公開
ID非公開さん
2020/11/14 19:26
4回答
Excel VBAの質問があります。 Sheet1のA列(番号)とB列(名前)があります。 Sheet1のデータを5つ区切りでB列に転記したいです。
Excel VBAの質問があります。 Sheet1のA列(番号)とB列(名前)があります。 Sheet1のデータを5つ区切りでB列に転記したいです。 ※Sheet1の数値は可変します。 シート1の1~5は、シート2のA1:B6 シート1の6~10は、シート2のC1:D6 シート1の10~15は、シート2のA7:B12 シート1の16~20は、シート2のC7:D12 とういう感じで、シート1のデータ数に合わせて同じような処理がしたいです。
誤:Sheet1のデータを5つ区切りで『B列』に転記したいです。 正:Sheet1のデータを5つ区切りで、『Sheet2』に転記したいです。
Excel | Visual Basic・120閲覧・100
ベストアンサー
一例です。 Sub sample() Dim sh2 As Worksheet, rng0 As Range Dim i As Long, j As Long, jj As Long Application.ScreenUpdating = False Set sh2 = Worksheets("シート2") j = -5 jj = 3 With Worksheets("シート1") Set rng0 = .Range("A1:B1") For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row Step 5 If jj > 1 Then jj = 1 j = j + 6 Else jj = jj + 2 End If Union(rng0, .Cells(i, 1).Resize(5, 2)).Copy sh2.Cells(j, jj) Next i End With Application.ScreenUpdating = True End Sub
質問者からのお礼コメント
初心者に1番分かりやすかったです。 ありがとうございます。 ちなみに、VBA歴は何年くらですか? ※このレベルに到達するまでどのくらいの年数を要するのか気になりました。 とても参考になりました。
お礼日時:2020/11/16 13:57