【エクセルマクロ】オートフィルタ「で始まる」で抽出する 4選

vba-オートフィルタ で始まる-アイキャッチ ExcelVBA

エクセルマクロで、オートフィルタで「~で始まる」を抽出するVBAコードをご紹介します。

特定の数値から始まるデータの抽出方法も掲載しています。

ぜひ、お試しください。

オートフィルタ「で始まる」:特定文字

以下のExcelVBAを実行すると、アスタリスクを使ってオートフィルタで絞り込みします。


Sub オートフィルタ特定の値で始まるデータ抽出()

    ActiveSheet.Range("A1").CurrentRegion.AutoFilter _
            Field:=3, _
            Criteria1:="=宮*", Operator:=xlAnd

End Sub
マクロ実行後

C列で「宮」から始まるデータのみ表示します。

[Field:3] にて列指定します。(C列の列番号は ”3” )


 
 

オートフィルタ「で始まる」:複数条件

以下のExcelVBAを実行すると、オートフィルタで「~から始まる」データを抽出します。


Sub オートフィルタデータ抽出()

    ActiveSheet.Range("A1").CurrentRegion.AutoFilter _
            Field:=3, _
            Criteria1:="=宮*", _
            Operator:=xlOr, Criteria2:="=山*"

End Sub
マクロ実行後

ワイルドカード「*」を使って、

C列で「宮」か「山」から始まるデータを抽出します。


 
 

オートフィルタ「で始まる」:複数列

以下のExcelVBAを実行すると、オートフィルタで複数列から「~で始まる」を抽出します。


Sub フィルタ特定の値から始まるデータ検索()

    ActiveSheet.Range("A1").CurrentRegion.AutoFilter _
            Field:=3, _
            Criteria1:="=宮*", Operator:=xlAnd

    ActiveSheet.Range("A1").CurrentRegion.AutoFilter _
            Field:=4, _
            Criteria1:="=101*", Operator:=xlAnd
End Sub
マクロ実行後

C列で「宮」から始まるデータと、

D列で「101」から始まるデータを抽出します。


 
 

オートフィルタ「で始まる」:数値

以下のExcelVBAを実行すると、オートフィルタで「特定の数字から始まる」データを抽出します。


Sub オートフィルタ特定数値から始まるデータ抽出()

Dim i As Long
Dim j As Long
Dim myAry  As Variant

    Application.ScreenUpdating = False
    
        j = 0
        myAry = Array()
    
        '2~20行目までループ
        For i = 2 To 20
        
            '「12」から始まる値を配列格納
            If Left(Cells(i, 1), 2) = 12 Then
                ReDim Preserve myAry(j)
                myAry(j) = Str(Cells(i, 1))
                j = j + 1
            End If
        Next i
    
        'フィルタ
        ActiveSheet.Range("A1").CurrentRegion.AutoFilter _
                Field:=1, _
                Criteria1:=myAry, Operator:=xlFilterValues
            
    Application.ScreenUpdating = True
            
End Sub
マクロ実行後

A列で「12」から始まるデータを表示します。

数値がフィルターで抽出できなかったため、裏ワザとして、

配列 [myAry] に該当する数字を入れた後、フィルタ抽出する方法にしています。


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

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

 

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