VBA オートフィルタの可視セルを配列格納(動画あり)

エクセルマクロ_オートフィルタ可視セル配列格納_アイキャッチ ExcelVBA

エクセルマクロで、オートフィルタの可視セルを配列へ格納するVBAコードをご紹介します。

このページのマクロコードは、コピペで使えます。
ぜひお試しください!

オートフィルタの可視セルを配列格納

以下のExcelVBAを実行すると、オートフィルタ後の可視セルを配列へ代入します。


Sub オートフィルタ可視セルを二次元配列に格納()

Dim MyList() As Variant
Dim i As Long
Dim j As Long
Dim LastRow As Long
Dim Cnt As Long

    '最終行を取得
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    Cnt = 1
    
    '要素数を宣言
    ReDim Preserve MyList(LastRow, 3)
   
    'フィルターでデータ抽出
    Range("A1").CurrentRegion.AutoFilter _
        Field:=3, _
        Criteria1:="埼玉県"
        
     'セルをループ
     For i = 2 To LastRow
            
        '行が非表示じゃなければ配列へ格納
        If Rows(i).Hidden = False Then
            For j = 1 To 3
                MyList(Cnt, j) = Cells(i, j)
            Next j
            Cnt = Cnt + 1
        End If
    Next
    
End Sub

マクロ実行前

フィルタでデータを抽出する前の状態です。


 

マクロ実行後

マクロを実行して、フィルタでデータ抽出した後に、

可視セルのみ二次元配列に格納します。


 
 
この記事がお役に立ちますと幸いです。
 
・【エクセルマクロ】オートフィルタ処理を自動化する使用例まとめ
 

【エクセルマクロ】オートフィルタ処理を自動化:超便利28選
...

 

「たった1秒で仕事が片づくExcel自動化の教科書【増強完全版】」
「5時間かかる作業が3時間でできます」ではなく「1秒で終わらせます」へ
毎日の業務を瞬時に終わらせるしくみを解説