複数列のデータを1列にまとめる |
スポンサードリンク | |
更新:2024/6/30;作成:2021/8/31
複数列のデータを1列にまとめる | 空白のセルを無視する |
Sub test() Dim myRng As Range, cn As Long Dim c As Range Set myRng = Range("A1:E5") ’値があるかを判断するセル範囲 ReDim myData(1 To 25, 1 To 1)’空白でないセルのデータを配列に格納します cn = 0 'cnの開始値を1とするため、ここでは0を設定します For Each c In myRng 'セル範囲を1個づつチェックします If c.Value <> "" Then 'セルの値が"" でない場合セルに値を入力します cn = cn + 1 'セルの値が""でない場合はcnの値をカウントアップします myData(cn, 1) = c.Value End If Next c '↓G1セルから下のセルをクリアします。 Range(Range("G1"), Range("G1").End(xlDown)).ClearContents '配列のデータをセルに書き出します Range("G1").Resize(cn, 1).Value = myData End Sub |
Sub test2() Dim myRng As Range, cn As Long Dim i As Long, j As Long Set myRng = Range("A1:E5") '値があるかを判断するセル範囲 ReDim myData(1 To 25, 1 To 1) cn = 0 'cnの開始値を1とするため、ここでは0を設定します For i = 1 To 5 For j = 1 To 5 If myRng(j, i) <> "" Then cn = cn + 1 'セルの値が""でない場合はcnの値をカウントアップします myData(cn, 1) = myRng(j, i) End If Next j Next i '↓G1セルから下のセルをクリアします。 Range(Range("H1"), Range("H1").End(xlDown)).ClearContents Range("H1").Resize(cn, 1).Value = myData End Sub |
スポンサードリンク
PageViewCounter
Since2006/2/27