【エクセルマクロ】オートフィルタで半角全角区別せず抽出:コピペで使えるコード

vba-オートフィルタで半角全角区別せず抽出-アイキャッチ ExcelVBA

エクセルマクロで、オートフィルタで半角全角を区別しないで抽出するVBAコードをご紹介します。

Inputboxにキーワードを入力して、一度に半角・全角の両方を抽出します。

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

オートフィルタで半角全角区別せず抽出

以下のマクロを実行すると、半角全角に関係なくデータ抽出します。


Sub フィルタで半角全角区別しないで抽出()

Dim a As Variant
    
    'インプットボックスを表示
    a = InputBox("住所を入力してください")
    
    If a <> "" Then
    
        'フィルタがかかっていたら全データ表示
        On Error Resume Next
            ActiveSheet.ShowAllData
        On Error GoTo 0
        
        'フィルタがついてなかったら、フィルタ設定
        If ActiveSheet.AutoFilterMode = False Then
            Range("A1").AutoFilter
        End If
    
        'D列で値を検索
        ActiveSheet.Range("A1").CurrentRegion.AutoFilter _
                Field:=4, _
                Criteria1:="=*" & StrConv(a, vbWide) & "*", _
                Operator:=xlOr, Criteria2:="=*" & StrConv(a, vbNarrow) & "*"
    End If
    
End Sub

 

マクロ実行後(パターン1:数値抽出)

インプットボックスに「3丁目」と入力し(数値は半角で入力)、

「OK」をクリックします。


 

半角「3丁目」と、全角「3丁目」を含むデータを

一括でフィルタ抽出します。


 
 

マクロ実行後(パターン2:文字列抽出)

インプットボックスに全角で「レジデンス」と入力し、

「OK」をクリックします。


 

半角「レジデンス」と、全角「レジデンス」を含むデータを抽出します。


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

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

 

「Excel マクロ&VBA 実践ビジネス入門講座」
「基礎力」と「実践力」がいっきに身につく
丁寧な解説にこだわっている一冊です