ExcelのFILTER関数の曖昧検索

記事
IT・テクノロジー
おはようございます。こんにちは。こんばんわ。
改善が大好きな、齋藤正夫です。

ブログをご覧いただき、ありがとうございます。
今日は、Excelのスピル関数の仲間の「FILTER関数」について、語ろうかと思います。

Excel関数で、スピル関数を使ったことはあるでしょうか?
現時点では、サブスクリプション契約のOfficeだけかな?
(2021年11月時点)

スピル関数の種類は多くないですが、私は、1999年から待ちわびた関数なのです。リリースされたときは、本当に感動しました!

種類の紹介は割愛しますが、その中で、最も複雑なのが、「FILTER関数」です。でも、使えるようになれば、鬼に金棒状態!

スピル関数が使えない時は、OFFSET関数、INDIRECT関数、ROW関数などなど、複雑な組み合わせで、セル範囲を指定していました。
しかし、複雑な数式を作らなくても、セル範囲を取得できます。これが、スピル関数の真骨頂です。

ちょっとした動画を差し込みます。マクロは使っていませんよ。
セルの値を変更すると、下のリストも連動して変更されますね!
これが、スピル関数です。セル範囲を返すのです!
尚、A8のセルにこんな数式を入力しています。
FILTER01.png

F6のセルは、「意味の無い数値」の合計を出してします。

このような使い方は、エクセル集計アルアルです。
支店ごとの詳細を出したい、年毎の比較したい。応用は様々です。

ただ、Excelに詳しい人は、こんな考えをしたのでは?
「ピボットテーブルのスライサーでいいじゃん。」

スライサーでも良いでしょう。ただ、スライサーには、欠点があります。
それは、「あいまい検索ができない」です。

曖昧検索(抽出)を実現するには、数式しかないのです。
そこで、活躍する関数が、FILTER関数です。

しかし、Docsを読んでも、FILTER関数は、詳しく説明されていません。
FILTER02.png
”含む”に、データの抽出条件を書くのですが、これが、難しい。

ここで、一つのポイントを書きます。

「条件は、TUREかFALSEを判定している」です。
Excelの TRUE と FALSE は、ちょっと違った特徴を持っています。

FALSE =0 
TRUE = 0以外

この特徴を利用するのです。

事例では、IFERROR関数の中に、FIND関数を使って、文字の検索を行っています。もし、文字があれば、その文字の位置を返します。
ようするに、文字があれば、1以上の数値を返し、無ければ、エラーとなり、0を返します。
0 と 0以外で、TRUE/FALSEを表現してデータを抽出しているのです。

最後に、こんな思いな人もいるといると思うので書いておきます。
「うちのOfficeバージョン古くって、スピル関数なんて使えねーよ!」

これは、正直、残念と言うしかありません。

世の中は、クラウドサービスを活用するように進んでおり、クラウドサービスを利用できないことは、時代に遅れると意味します。
より良く便利に利用するなら、サブスクリプション契約のOfficeを契約することを強くお勧めいたします。



サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す ココナラコンテンツマーケット ノウハウ記事・テンプレート・デザイン素材はこちら