ADVERTISEMENT

【Notion】Notion数式でエラー表示だけが出る時の参照プロパティ確認

【Notion】Notion数式でエラー表示だけが出る時の参照プロパティ確認
🛡️ 超解決

Notionでデータベースを使いこなしていると、数式プロパティを活用して自動計算や集計を行いたくなる場面が多々あります。しかし、数式を設定したのに「#ERROR」や「NaN」といったエラー表示が突然現れて困った経験はないでしょうか。このようなエラーは、多くの場合、数式が参照しているプロパティに問題があることが原因です。本記事では、参照プロパティに着目してエラーの原因を特定し、解決するための具体的な手順を解説します。

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

  • 最初に見る場所: 数式が参照しているプロパティの名前と型をデータベースのプロパティ一覧で確認する。
  • 切り分けの軸: プロパティ名の不一致、データ型の不一致、循環参照、存在しないプロパティの参照、の4つに分類して原因を調べる。
  • 注意点: 会社の共有ワークスペースでは他のメンバーがプロパティを変更・削除した可能性があるため、管理者やチームと連絡を取りながら対応する。

ADVERTISEMENT

Notion数式でよくあるエラー表示の種類

Notionの数式で発生するエラーは、表記や挙動によっていくつかのパターンに分類できます。それぞれのエラーが示す意味を把握しておくと、原因の切り分けがスムーズになります。

エラー表示 主な原因 対象となる参照プロパティの問題
#ERROR 数式の構文エラー、または参照プロパティの型不一致 参照先プロパティの名前が間違っている、または型が数式と合わない
NaN 計算結果が数値でない(例:0÷0、文字列を数値として計算) 参照プロパティが空(null)または文字列型だが数値演算に使っている
(無表示) 数式が正常だが何も表示されない(例:if文で偽の場合に空文字) 参照プロパティの値が期待通りでない
#REF! 参照しているプロパティが存在しない プロパティが削除された、または名前が変更された

エラー表示の種類によって、参照プロパティに関する問題が直接的な原因になっていることがわかります。特に「#ERROR」と「#REF!」は参照プロパティの存在や型に起因することが多いため、まずは参照先を確認する必要があります。

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

エラー発生原因:参照プロパティの問題

プロパティ名の不一致

数式内でプロパティを参照する際には、データベースのプロパティ名を正確に記述する必要があります。プロパティ名を後から変更したり、スペルミスがあると、Notionはそのプロパティを見つけられずエラーになります。例えば、数式内で「価格」と書いているのに、実際のプロパティ名が「金額」に変更されている場合などです。プロパティ名は大文字小文字を区別するため、微妙な違いにも注意が必要です。

データ型の不一致

Notionの数式は、参照するプロパティのデータ型によって使用できる関数や演算子が異なります。数値型を期待している場所に文字列型のプロパティを指定すると、型の不一致でエラーになります。たとえば、prop("数量") * 2という数式で「数量」プロパティがテキスト型だと、乗算ができずにエラーになります。同様に、日付型のプロパティを数値として計算しようとするとエラーになります。

存在しないプロパティの参照

数式内で参照しているプロパティがデータベースから削除されてしまうと、当然エラーが発生します。これは、他のメンバーが意図せずにプロパティを削除した場合や、テンプレートをコピーした際に元のデータベースのプロパティが引き継がれなかった場合などに起こります。また、ロールアップやリレーションを通じて別テーブルのプロパティを参照している場合、参照先のプロパティ自体が削除されている可能性もあります。

循環参照

数式が自分自身のプロパティを直接的または間接的に参照している場合、循環参照となりエラーが発生します。例えば、数式プロパティAがプロパティBを参照し、プロパティBが数式でプロパティAを参照するようなケースです。Notionでは循環参照を検出してエラー表示になるため、数式の依存関係を見直す必要があります。

参照プロパティをチェックする手順

エラーが発生した際は、以下の手順で参照プロパティを確認してください。この手順を踏むことで、原因の大部分を特定できます。

  1. エラーが表示されているデータベースを開き、該当の数式プロパティが設定されているページを表示します。
  2. 数式プロパティのセルをクリックして数式編集画面を開きます。画面上部の「数式を編集」ボタンからもアクセスできます。
  3. 数式内でprop("プロパティ名")のように記述されている部分を確認し、参照しているすべてのプロパティ名をメモします。
  4. データベースのプロパティ一覧(右上の「…」→「プロパティ」)を開き、メモしたプロパティ名が実際に存在するか、名前が完全に一致しているかを確認します。大文字小文字や全角半角の違いにも注意してください。
  5. 存在するプロパティのデータ型(テキスト、数値、日付、セレクトなど)を確認します。数式内で想定している型と一致しているか検証します。
  6. 循環参照の可能性がある場合、数式が他の数式プロパティを参照していないか、または他の数式プロパティから参照されていないかを、データベース全体の数式を確認して調べます。
  7. ロールアップやリレーションプロパティを経由して別のデータベースを参照している場合は、参照先のデータベースのプロパティも同様に確認します。
  8. 上記の確認で問題が見つからなければ、数式の構文自体に誤りがないか再度チェックします。関数の引数の数や括弧の対応などを確認してください。

よくある失敗パターンと対処法

失敗パターン1:プロパティ名変更後に数式を更新していない

チームでプロパティ名を変更した際、数式内の参照名が自動的に更新されないことがあります。特に、変更後に数式を再編集しない限り、古い名前のまま残ってエラーになります。対処法としては、数式内のプロパティ名を現在の名前に書き換えるか、データベースのプロパティ名を元の名前に戻すことが考えられます。会社の共有ワークスペースでは、変更を行う前にチームメンバーに周知するルールを設けるとよいでしょう。

失敗パターン2:型を無視した数式を書いてしまう

例えば、「単価(数値型)」と「数量(数値型)」の積を計算するつもりが、誤って「単価(テキスト型)」を参照してしまうケースです。この場合、単価の値が「1,200」のようにカンマ付きテキストだと、数値に変換できずエラーになります。対処法は、プロパティの型を数値に変更するか、数式内でtoNumber()関数を使って明示的に変換することです。ただし、変換できない文字列があるとエラーになるため、データの整合性を保つ必要があります。

失敗パターン3:空のプロパティを参照して計算しようとする

数値プロパティが空(NULL)の場合、その値を計算に使うとエラーになることがあります。例えば、prop("割引率") * 100の割引率が未入力だと、Notionは空を0とみなさずエラーにする場合があります。このようなときは、if(empty(prop("割引率")), 0, prop("割引率") * 100)のように、空の場合のデフォルト値を設定することでエラーを回避できます。

管理者に確認する情報

会社の共有ワークスペースでエラーが発生した場合、管理者またはデータベースのオーナーに以下の情報を伝えると、原因解明がスムーズになります。

  • どのデータベースのどの数式プロパティでエラーが出ているか(データベース名、プロパティ名)
  • エラーが発生し始めたタイミング(いつからか、最近プロパティを変更したか)
  • 参照しているプロパティの一覧と、それぞれの現在の型
  • 他のメンバーが最近プロパティの追加・削除・名前変更を行った可能性
  • 管理者側でプロパティの変更履歴(Notionのアクティビティログ)を確認できるか

管理者はこれらの情報をもとに、意図しない変更が行われていないかを調査できます。また、必要に応じてデータベースのバックアップから復元するなどの対応も検討できます。

よくある質問

Q1: 特定のページだけでエラーが出るのはなぜ?

特定のページだけエラーが出る場合、そのページの参照プロパティの値が他と異なる可能性があります。例えば、数式がprop("日付").dateBetween(now(), "days")のように日付計算をしているとき、該当ページの「日付」プロパティが空だとエラーになります。また、ロールアップで取得する値がページによって異なる場合も、一部のページだけエラーになることがあります。

Q2: エラーがチーム全体で発生した場合は?

チーム全体で同じエラーが発生している場合、データベースの構造自体に問題があることが多いです。プロパティ名の変更や削除が全員に影響するため、まず管理者に問い合わせて、最近の変更点を確認してください。一時的な対処として、数式をシンプルなもの(例:単に1+1)に置き換えてエラーが消えるかテストすると、原因が参照プロパティにあるかどうか切り分けられます。

Q3: 数式内で関数を使う際の注意点は?

Notionの数式で利用できる関数には、引数の型が厳密に決まっているものがあります。例えば、round()は数値のみ、formatDate()は日付型が必要です。関数のリファレンスを確認し、適切な型のプロパティを渡すようにしてください。また、prop()で取得した値が期待する型かどうか不安な場合は、format()toNumber()で明示的に変換してから使うとエラーを防げます。

まとめ

Notion数式にエラーが表示された場合、最初に参照プロパティの存在確認と型の確認を行うことが重要です。プロパティ名の誤り、データ型の不一致、循環参照など、原因は限られています。本記事で紹介した手順を順番に実行すれば、大半のエラーは解決できます。会社の共有環境では、プロパティの変更履歴を把握しておくことで、トラブルを未然に防ぐことも可能です。数式を活用してデータベースを効率化するためにも、参照プロパティの管理は欠かせません。


ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

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

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

ADVERTISEMENT