データを抽出する(AutoFilter) : Excel

ExcelのAutoFilterメソッドを使うと、条件に合ったデータを抽出します。



Homeに戻る > Excel 数値・文字列・検索・印刷のTipsへ

構文 : Rangeオブジェクト.AutoFilter(Field, Criteria1, Operator, Criteria2, VisibleDropDown)

 Field - フィルタの対象となる列番号を整数で指定します。左側から始まり、最も左側にある列は 1 になります。
 Criteria1 - 抽出条件となる文字列を指定します。省略すると、抽出条件はなしになります。
 Operator - フィルタの種類を指定します。
 Criteria2 - 2番目の抽出条件となる文字列を指定します。
 VisibleDropDown - オートフィルタのドロップダウン矢印を表示する場合はTrue、非表示の場合はFalseを指定します。

Criteria1の設定例:
 Criteria1:="=値" - 値と等しい
 Criteria1:="<>値" - 値と等しくない
 Criteria1:=">値" - 値よりおおきい
 Criteria1:=">=値" - 値以上
 Criteria1:="<値" - 値より小さい
 Criteria1:="<=値" - 値以下
 Criteria1:="=値*" - 開始文字が値
 Criteria1:="<>値*" - 開始文字が値でない
 Criteria1:="=*値" - 値で終わる
 Criteria1:="<>*値" - 値で終わらない
 Criteria1:="=*値*" - 値を含む
 Criteria1:="<>*値*" - 値を含まない

Operatorの定数 :
 xlAnd - Criteria1の条件とCriteria2の条件の両方を満たすデータを抽出
 xlOr - Criteria1の条件かCriteria2のいずれかの条件を満たすデータを抽出
 xlTop10Items - 値の上位からCriteria1で指定した数のデータを抽出
 xlBottom10Items - 値の下位からCriteria1で指定した数のデータを抽出
 xlTop10Percent - 値の上位からCriteria1で指定したパーセントのデータを抽出
 xlBottom10Percent - 値の下位からCriteria1 で指定したパーセントのデータを抽出

Excel実行画面

抽出画面
データ抽出ソフト

人口が200000人以上の市町村を抽出した結果
人口抽出

名前に「大」がつく市町村を抽出
市町村名の抽出

人口と名前の両方を実行した結果
人口と市町村名の抽出

Excel VBA実行コード

'人口が何人以上の市町村を抽出
Private Sub CommandButton1_Click()
    If Range("B2") = "" Then
        MsgBox "B2に人数を入力してください。"
        Exit Sub
    End If
    
    Range("A6").AutoFilter 2, ">=" + Str(Range("B2"))
End Sub

'オートフィルタを解除する
Private Sub CommandButton2_Click()
    AutoFilterMode = False
End Sub

'名前に()文字がつく市町村
Private Sub CommandButton3_Click()
    If Range("B2") = "" Then
        MsgBox "B4に抽出する文字を入力してください。"
        Exit Sub
    End If
    
    Range("A6").AutoFilter 1, "*" + Range("B4") + "*"
End Sub


Homeに戻る > Excel 数値・文字列・検索・印刷のTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved