URLをコピーしました!
スキルアップを始める!

GoogleスプレッドシートでFILTER関数を使用して2・3個の複数条件を組み合わせる(Part2)

Googleスプレッドシート
\スプレッドシートのスキルアップはこちら!/ スプレッドシート

前回の続きです。GoogleスプレッドシートでFILTER関数を使用して複数の条件を組み合わせることもできます。設定次第で2つ3つと組み合わせることも可能です。

以下は、FILTER関数を使用して複数の条件を持つ例です。

FILTER関数とは?

範囲をフィルタ処理して、指定した条件を満たす行または列を返します。

FILTER(範囲, 条件1, [条件2, …])

範囲:フィルタ処理するデータ

条件:[範囲] の 列に対応する TRUE 値または FALSE 値を含む列/行か、TRUE または FALSE と評価される配列数式を指定します。

前回は、条件2… – [任意] 反復可能を「,(カンマ)」でつなぎましたが、(*)アスタリスクで連結する方法もあります。

2つの条件を組み合わせてFILTER関数を使用する例

例えば、A列が数値の列で、B列が文字列の列とし、条件としてA列が10より大きくかつB列が”リンゴ”である行を抽出したい場合、以下のようなFILTER関数を使用できます。

=FILTER(A:B, (A:A > 10)*(B:B = "リンゴ"))

この例では、A:B, (A:A > 10)*(B:B = “リンゴ”)がそれぞれ条件を表しています。条件を組み合わせるには、これらの条件を論理演算子で結合しています。*は論理積(AND)を表します。

したがって、(A:A > 10)*(B:B = “リンゴ”)は、A列が10より大きくかつB列が”リンゴ”である行に対する真偽値の配列を生成します。

この条件をFILTER関数に適用することで、指定された条件を満たす行のみが抽出されます。

3つ以上複数の条件を組み合わせて FILTER 関数を使用する例2

複数の条件を組み合わせて FILTER 関数を使用する例をもう一つ挙げます。

例えば、A列が日付、B列が数値、C列が文字列で、A列が特定の日付範囲内かつB列がある閾値以上かつC列が特定の文字列である行を抽出したい場合、以下のような FILTER 関数を使用できます。

[rml_read_more]

=FILTER(A:C, (A:A >= DATE(2023,10,4))*(A:A <= DATE(2023,10,7))*(B:B >= 10)*(C:C = "バナナ"))

この例では、以下の条件が組み合わさっています。

  • A列が2023年10月4日以上かつ2023年12月31日以下(A:A >= DATE(2023,10,4))*(A:A <= DATE(2023,10,7))
  • B列が100以上 (B:B >= 10)
  • C列が “バナナ” (C:C = "バナナ")

この条件をFILTER関数に適用することで、指定された条件を満たす行のみが抽出されます。

まとめ

条件に適した形式や比較演算子は具体的なケースによりますので、具体的なデータと目的に応じて条件を調整してください。

なお、条件を変更する場合は、条件を適切に調整してください。

会員登録するとご利用できます。
Kindle Unlimited 会員は無料で購読できます
購読はこちら
Kindle Unlimited 会員は無料で購読できます
購読はこちら