100361 ランダム
 ホーム | 日記 | プロフィール 【フォローする】 【ログイン】

ULALA'Sブログ

ULALA'Sブログ

【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! --/--
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x
2020年09月04日
XML
カテゴリ:VBA
​​前回​に引き続ぎ、AutoFilterについて​
記載していこうと思う。

今回は複数条件による絞り込みを行ってみる。
--------------------------------------
①Range.AutoFilter
--------------------------------------
​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​
​前回のAutoFilter画像をそのまま流用し、
ボタンを少し改造して、商品を複数条件
(バナナとメロン)で絞り込みを行うようにした。​
※フィルタマークついているが、絞り込みはしていない状態



ソース

Sub setAutoFilter()

    ' オートフィルタクリア
    Range("B49").AutoFilter

    ' バナナ or メロンで絞り込み
    Range("B49").AutoFilter 2, "バナナ", xlOr, "メロン"

End Sub

結果




前回記載から、絞り込みの条件を変更
しただけとなる。

上記はOR条件(xlOr)で絞り込みしているが、
AND条件(xlAnd)も可能。

例えば、
値段が150円以上、500円以下の行を絞り込みたい場合、

Range("B49").AutoFilter 3, ">=150", xlAnd, "<=500"

と記載することで絞り込み可能。
※セルの書式が文字列だとうまく絞り込みできないので、
標準や、数値などにしておくこと。


新しいボタンを用意して確認してみる。




ソース

Sub setAutoFilterForPrice()

    ' オートフィルタクリア
    Range("B49").AutoFilter

    ' 150円~500円で絞り込み
    Range("B49").AutoFilter 3, ">=150", xlAnd, "<=500"

End Sub

一応記載しておくが、、
演算子の間に半角スペースが入っていても問題なく絞り込みできる。
※分かりずらくて申し訳ないが<=の前後にスペース挿入している。

Range("B49").AutoFilter 3, ​​" >= 150", xlAnd, " <= 500"​​

「> =」 や 「< =」は当然ダメ。
エラーにはならず絞り込みで何も表示されなくなる。

結果



次回​は抽出条件を配列で指定する方法を​
記載しようと思う。





お気に入りの記事を「いいね!」で応援しよう

最終更新日  2020年09月06日 18時04分00秒
コメント(0) | コメントを書く


PR

プロフィール

ULALA13

ULALA13

カレンダー


© Rakuten Group, Inc.