【詰め日記】FILTER関数をいじっていたら、「オートフィルタでいいんじゃない?」という気持ちになった話
こんにちは、詰めExcel研究家の詰めです。
今日はExcelのFILTER関数をいじっていたら、だんだん心が折れていった話です。
今回は、この表からデータをフィルタして抽出する方法を試してみました。

🧪FILTER関数を試してみる
FILTER関数は、条件に合う行だけをスッと抜き出してくれる関数です。
たとえば「種別がH01の人だけ出して」と書くときはこう。
=FILTER(A2:E7, D2:D7="H01")
これだけで条件抽出ができるなんて、時代の進化を感じます。
🌀空白セルが0になる事件
ところが、結果を見ていたら気づいたんです。
備考の空白セルが、なぜか0になっている。

調べてみたら、Excelは空白セルを数値の“0”として扱うことがあるらしい。
なるほど、たしかにExcelっぽい。
色々調べて、一番シンプルな気がした回避するための方法がこれ。
=FILTER(
CHOOSE({1,2,3,4,5},
A2:A7,
B2:B7,
C2:C7,
D2:D7,
IF(E2:E7="","",E2:E7)
),
D2:D7="H01"
)いや、長い。
FILTER関数、もはや関数というより構築物。
ちょっと空白を消したいだけなのに、
関数がどんどん育っていくのを見守るしかありません。
🧭Power Query のほうが楽なのでは?
数式の森で迷子になりながら思いました。
「これ、Power Queryでやったほうが早くない?」
Power Queryなら、
列の型を明示的に設定できる
空白を0と誤認しない
条件抽出もクリックで完結
更新ボタンひとつで再実行できる
しかも関数を書かなくていい。
🪜でもFILTERのほうがお手軽かも
しかし、Power Query で編集するには、
わざわざエディターを開くのがちょっと面倒。
やっぱり、関数でサッと済ませたい。
FILTER関数のほうが手軽かも。
Excelの中で完結するのも安心。
0に変換されるのなんて気にしなければいい。
・・・と思ったのも束の間。
🌀最終的な結論
「いや、オートフィルタでいいだろ」
FILTERをいじり、Power Queryを思い出し、またFILTERに戻り、
ひとしきり考えたあと、はたと気がつきました。
結局、最初からそこにあった「フィルタ」ボタンで事足りる。
列の▼をポチッと押せば、条件抽出なんて一瞬。
もしくは「Shift+F10→E→V」。
FILTER関数を勉強したおかげで、
オートフィルタの偉大さを再確認しました。
🎯おわりに
新しい関数を覚えようと、今回はFILTER関数を研究してみましたが、
最終的に「普通のフィルタでよくない?」というところに落ち着きました。
「こんなときにFILTERが本領発揮するよ!」という場面があれば、
ぜひコメントで教えてください。
もう少しFILTERと仲良くなれるかもしれません。
📚 おまけ
きたみあきこ先生のこちらの書籍では、FILTER関数もしっかり紹介されています!マニアックな関数を知りたい方にお勧めな書籍です📗
Amazonアソシエイト参加者として、適格販売により収入を得る場合があります。いただいた収益が、記事執筆や活動継続の励みになります。
✏️ 追記
FILTER関数と戯れた体験談を、ハルさんの「あなたのストーリーを届けよう」にエントリーさせていただきます!ハルさん、いつも素敵な企画をありがとうございます🙇
