#SPILL!の事例と解決策 | エラー処理やデータの正確性 | EXCEL逆引きリファレンス

スポンサーリンク
スポンサーリンク

#SPILL!エラーの事例と解決策

概要

#SPILL!エラーは、Excelで動的配列関数を使用する際に、結果の範囲が他のセルによって妨げられている場合に発生します。これは主に、配列が表示される予定のセル範囲内に何かしらのデータや障害物が存在するため、Excelが結果を適切に展開できないときに表示されます。

セルの重複によるエラー

配列関数を使用して結果を複数のセルに展開しようとする際、展開される範囲に他のデータがあると#SPILL!エラーが発生します。例えば、FILTER関数やUNIQUE関数を使用する場合、指定範囲内にすでにデータがあると展開が阻止され、エラーが表示されます。

事例: 配列範囲にデータがある場合の#SPILL!エラー

以下の表は、FILTER関数で動的にデータを抽出しようとした際、展開範囲内に既存のデータがあるために#SPILL!エラーが発生した例です。下記の例では既にB4やA5などにデータがある状態です。

A B C
1 データ1 データ2
2 50 100
3 70 200
4 =FILTER(A1:B2, B1:B2>50) 100
5 80 200

解決策

  1. 展開範囲に既存のデータが含まれていないか確認します。
  2. 必要であれば、データを他の場所に移動し、空白の範囲を確保します。

まとめ

#SPILL!エラーは、動的配列が適切に展開できない場合に発生します。展開範囲に他のデータがないか確認し、無効な範囲を指定していないことを確認することで、このエラーを解消できます。また、配列のサイズやシート範囲にも注意を払い、結果がシート内に収まるようにすることが重要です。