ADVERTISEMENT

【Notion】Notionで空欄だけを抽出したい時のフィルターと数式の使い分け

【Notion】Notionで空欄だけを抽出したい時のフィルターと数式の使い分け
🛡️ 超解決

Notionのデータベースで「空欄(空白セル)」だけを抽出したい場面はよくあります。タスク管理で未入力の担当者を探したり、プロジェクトの開始日が未設定の行を洗い出すケースです。しかし、Notionのフィルター機能だけでは想定通りに空欄を抽出できないことがあり、数式プロパティを使うべきか迷う方も多いでしょう。この記事では、フィルターと数式のそれぞれの特徴を理解し、空欄抽出に最適な方法を選べるように解説します。

【要点】この記事で確認すること

  • 最初に見る場所: データベースのフィルターメニューで「空である」条件が使えるかどうか(プロパティの種類によって異なります)。
  • 切り分けの軸: フィルターのみで済むケース、数式プロパティが必要なケース、さらにビューと併用する方法を整理します。
  • 注意点: 会社の共有データベースでフィルターを変更すると他のメンバーに影響するため、ビューを複製してから操作してください。

ADVERTISEMENT

空欄抽出でよくある問題と原因

Notionのデータベースで空欄を抽出しようとしたとき、フィルター条件に「空である(Is empty)」や「空でない(Is not empty)」が表示されない、または期待した結果にならないことがあります。これは、プロパティのタイプによってフィルター条件が異なるためです。例えば、テキストプロパティには「空である」条件がありますが、セレクトプロパティや日付プロパティにはありません。また、数式プロパティやロールアップで生成された値の場合、見た目が空でも内部的に何らかの値(0や空文字など)が入っているとフィルターが正しく動作しません。

さらに、チェックボックスやファイルメディア、リレーションなど、プロパティの性質上「空」の定義が曖昧なものもあります。原因を正しく特定するには、対象のプロパティタイプを確認し、Notionのフィルターで対応できるかどうかを把握する必要があります。

お探しの解決策が見つからない場合は、こちらの「Notionトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

フィルターを使った空欄抽出の具体的な手順

フィルター機能で空欄を抽出できるのは、主に「テキスト」「電話番号」「メール」「URL」「数式(結果がテキストの場合)」などのプロパティです。手順を紹介します。

テキストプロパティの場合

  1. データベースの右上にある「フィルター」ボタンをクリックします。
  2. 「フィルターを追加」から対象のプロパティ(例:タスク名)を選択します。
  3. 条件を「空である」に設定します。
  4. フィルターが適用され、空欄の行だけが表示されます。
  5. 複数のプロパティで空欄を同時に抽出したい場合は、フィルターを追加で設定します(AND条件)。

セレクト・マルチセレクト・日付など他のプロパティの場合

これらのプロパティには「空である」条件が標準で用意されていません。そのため、フィルターだけでは空欄を抽出できません。代わりに、数式プロパティを使って空欄判定を行うか、別の工夫が必要です。詳細は後述します。

数式プロパティを使った空欄抽出の方法

フィルターで対応できないプロパティタイプの場合、数式プロパティを新しく作成し、その結果を空欄かどうかで判定し、フィルターで抽出します。具体的な数式をプロパティタイプ別に解説します。

セレクトプロパティの空欄判定

セレクトプロパティが空の場合、数式では「prop(“セレクト”)」が空文字列として評価されます。次の数式で空欄を識別できます。

if(prop("セレクト") == "", "空", "入力あり")

この数式を「空欄判定」などのプロパティ名で作成し、そのプロパティに対してフィルター「空である」または「空でない」を設定します。ただし、数式の結果が「空」という文字列になるため、フィルター条件は「空欄判定が「空」と等しい」と指定します。

日付プロパティの空欄判定

日付プロパティが空の場合、数式では「空」ではなく「null」として扱われます。以下の数式で判定できます。

if(prop("日付") == fromTimestamp(0), "空", "入力あり")

注意点として、fromTimestamp(0)は1970年1月1日を表しますが、空の日付プロパティは実際にはこの値と等しくなります。別の書き方としてempty(prop("日付"))という関数も使えます。

チェックボックスプロパティの空欄判定

チェックボックスは空(未入力)の状態ではfalse(チェックなし)として扱われるため、単に「空である」フィルターは存在しません。数式で判定する場合は、チェックボックスが「false」であることを条件にします。

if(prop("チェックボックス") == false, "未チェック", "チェック済み")

この数式結果に対してフィルターを設定します。

フィルターと数式の使い分け:比較表

プロパティタイプ フィルター「空である」の有無 数式での空欄判定の可否 推奨方法
テキスト あり 可能 フィルター直接使用
セレクト なし 可能 数式+フィルター
マルチセレクト なし 可能(空配列判定) 数式+フィルター
日付 なし 可能 数式+フィルター
チェックボックス なし(真偽値のみ) 可能(false判定) 数式+フィルター
数式 結果の型による 数式の結果をさらに別の数式で判定

失敗しやすいパターンと対策

空欄抽出でよくある失敗とその対策をまとめます。

フィルター条件が「空である」と表示されない

プロパティタイプによっては「空である」条件がそもそも存在しません。その場合は数式を使う必要があります。

数式で空判定をしたのにフィルターが効かない

数式プロパティの結果が「空」という文字列や数字の0になった場合、フィルターで「空である」を選んでもヒットしません。数式結果が空の文字列や空白になっているケースでは、フィルター条件を「空である」ではなく「数式プロパティが空と等しい」など適切に設定する必要があります。

共有データベースでフィルターを変更してしまった

会社の共有ワークスペースでは、フィルターの追加・変更はビュー全体に影響します。「ビューを複製」してから個人用のビューでフィルターを設定することで、他のメンバーに影響を与えずに空欄抽出ができます。

管理者やチームへの確認事項

Notionのデータベース設計段階で空欄の扱いを統一しておくと、後々の抽出が楽になります。以下の点を管理者やチームと確認しておきましょう。

  • 必須項目を設定する: データベースのプロパティで「必須」にチェックを入れると、空欄のまま保存できなくなるため、空欄自体が発生しなくなります。
  • テンプレートの活用: 新規ページ作成時にデフォルト値やプレースホルダーを入れておくことで、空欄を見分けやすくなります。
  • 数式プロパティの共有ルール: 数式を使った空欄判定プロパティをチームで共通して使う場合は、プロパティ名と数式をドキュメント化し、メンバーが勝手に変更しないように注意します。

よくある質問(FAQ)

Q. マルチセレクトで完全に空の状態を抽出するには?

マルチセレクトが空の場合、数式では空配列として扱われます。empty(prop("マルチセレクト"))を使うとtrue/falseが返るので、この結果を別の数式で文字列に変換してフィルターにかけてください。

Q. リレーションプロパティの空欄を抽出したい

リレーションもフィルターの「空である」は使えません。数式でempty(prop("リレーション"))を判定し、同様の手順で抽出します。

Q. フィルターと数式を組み合わせるのは複雑ですが、もっと簡単な方法は?

Notionの「グループ化」機能を使って、空欄の行を視覚的にまとめる方法もあります。プロパティでグループ化すると、空欄のグループが自動的に表示されるため、空欄だけを確認したい場合に便利です。ただし、これは抽出というより可視化に近く、データの操作には向きません。

まとめ

Notionで空欄を抽出するには、まず対象のプロパティタイプを確認し、フィルターの「空である」が使えるかどうかを判断してください。使えない場合は数式プロパティを作成し、空欄判定の結果をフィルター条件に利用します。数式を書く際は、プロパティの型に応じた正しい比較方法を選ぶことが重要です。また、共有データベースではビューの複製を忘れずに行い、他のメンバーの作業に影響を与えないように注意しましょう。これらの手順を押さえておけば、どんなプロパティでも効率的に空欄を抽出できるようになります。


ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。

🧩
Notionトラブル完全解決データベース 共有、権限、データベース、Notion AI、インポートで止まる問題を横断的に確認できます。

ADVERTISEMENT