AutoFilter オブジェクト(メソッド・プロパティ)
AutoFilter.ShowAllData メソッド
AutoFilter.ShowAllData メソッドを実行すると、オートフィルタの全ての絞り込みを解除します。(Excel 2007 以降)
object.AutoFilter.ShowAllData
引数・戻り値
- object ・・・ 対象となる Worksheet オブジェクトを指定します。
オートフィルタの絞り込みが解除されている状態で、AutoFilter.ShowAllData メソッドを実行するとエラーが発生します。
絞り込みがされているかどうかは、FilterMode プロパティ等で確認できます。( オートフィルタの状況を確認 を参照。 )
オートフィルタの絞り込みを解除する例
サンプルVBAソース 1
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
Sub Sample13_1_AutoFilter() 'オートフィルタの絞り込みを解除(Excel 2007以降) 'AutoFilterで絞り込まてているか確認 If ActiveSheet.FilterMode Then '全てのデータを表示する ActiveSheet.AutoFilter.ShowAllData End If End Sub |
サンプルVBAソース 2
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Sub Sample13_2_AutoFilter() 'オートフィルタの絞り込みを解除 'オートフィルタが設定されているか確認 If Not ActiveSheet.AutoFilter Is Nothing Then 'オートフィルタを一旦解除 Range("B3").AutoFilter 'オートフィルタを再度設定 Range("B3").AutoFilter End If End Sub |
実行結果
サンプルVBAソース(1・2)実行前
実行後
AutoFilter.Range プロパティ
AutoFilter.Range プロパティで、オートフィルタが適用されている範囲(Range オブジェクト)を取得することができます。
object.AutoFilter.Range
引数・戻り値
- object ・・・ 対象となる Worksheet オブジェクトを指定します。
- オートフィルタが適用される範囲を表す Range オブジェクト を返します。
オートフィルタの適用範囲を取得する例
サンプルVBAソース 3
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
Sub Sample13_3_AutoFilter() Dim myRng As Range '指定したワークシート上にオートフィルタが設定されているかを確認 If ActiveSheet.AutoFilterMode Then 'オートフィルタの適用範囲を取得 Set myRng = ActiveSheet.AutoFilter.Range MsgBox myRng.Address End If End Sub |
実行結果
AutoFilter.Sort プロパティ
オートフィルタで、並べ替えを行うには、AutoFilter.Sort プロパティを使用します。Sort オブジェクト の詳細については、並べ替え(Sort オブジェクト, SortFields コレクション) を参照してください。
object.AutoFilter.Sort
引数・戻り値
- object ・・・ 対象となる Worksheet オブジェクトを指定します。
- AutoFilter コレクションの並べ替え列と並べ替え順序を取得します。
絞りこまれたデータの中で、ソートが行われます。
フィルターが解除されても並べ替えは元に戻りません。
オートフィルタで、並べ替えを実行する例
サンプルVBAソース 4
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
Sub Sample13_4_AutoFilter() Dim myRng As Worksheet Set myRng = ActiveSheet Range("B3").AutoFilter Field:=8, _ criteria1:="10", _ Operator:=xlTop10Items With myRng.AutoFilter.Sort With .SortFields .Clear '「合計」降順で並べ替え .Add Key:=Range("I3"), _ SortOn:=xlSortOnValues, _ Order:=xlDescending, _ DataOption:=xlSortNormal '「登録番号」昇順で並べ替え .Add Key:=Range("B3"), _ SortOn:=xlSortOnValues, _ Order:=xlAscending, _ DataOption:=xlSortNormal End With .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With End Sub |
実行結果
サンプルVBAソース(4)実行前
実行後
関連記事
-
-
フリガナの取得(GetPhonetic メソッド)
GetPhonetic メソッド GetPhonetic メソッドは、指定した文 …
-
-
セルをアクティブにする・セルを選択する(Activate, Select)
セルをアクティブにする・選択する 【書式:セルをアクティブにする】 object …
-
-
セルを削除する(Delete メソッド)
Delete メソッド Delete メソッドで、指定したセル・セル範囲を削除し …
-
-
オートフィルタ(抽出件数の取得・結果集計)AutoFilter メソッド
ワークシート関数の Subtotal 関数 の使い方 VBA には、オートフィル …
-
-
セルが結合セルの一部である場合、その結合セルの範囲を取得(MergeArea プロパティ)
MergeArea プロパティ MergeArea プロパティは、指定したセルが …
-
-
セル・セル範囲に名前を定義・削除(Name プロパティ・Names コレクション)
セル・セル範囲に名前を定義(Name プロパティ) Range オブジェクトのN …
-
-
文字列の縦位置を取得・設定する(VerticalAlignment プロパティ)
VerticalAlignment プロパティ VerticalAlignmen …
-
-
ワイルドカードを使って検索(Find メソッド)
Find メソッド 指定したセル範囲内の特定の情報を含むセルを検索します。 【書 …
-
-
任意のセルを含む行または列全体を参照(EntireRow プロパティ,EntireColumn プロパティ)
EntireRow プロパティ・EntireColumn プロパティ Entir …
-
-
入力規則(Validation オブジェクト)
Validation オブジェクト セル範囲に入力できる値を制限するには 入力規 …




