Excelで発生する「#スピル!」エラーの種類と対処法

Excelで発生する「#スピル!」エラーの種類と対処法

※ Microsoft365(旧Office365)Excelの画像で解説しています。

「#スピル!」や「#SPILL!」はスピルの使い方の不具合から発生するエラーです。「スピル」は複数の結果を一括で表示できる新機能ですが、表示を妨げる何らかの不具合があるとエラー値「#スピル!」「#SPILL!」を返します。

「#スピル!」エラー一覧

「#スピル!」エラー1.スピル範囲が空白ではありません

このエラーの原因
スピルで計算結果を表示する範囲が空白でなく、既にデータが入力されているために発生するスピルエラーです。
対処法
  1. エラーのアイコンをクリック
  2. 「阻害しているセルを選択」をクリック
  3. 入力データがあるセルが選択される
  4. 入力データを削除するか移動させる
  5. エラーが消えて、スピルの結果が表示される

Excelで発生する「#スピル!」エラー1

「#スピル!」エラー2.スピル範囲が大きすぎます

このエラーの原因
スピルの検索値に列全体を指定した場合に発生するスピルエラーです。
対処法
下図の例では、VLOOKUP関数の検索値に列全体を指定したためスピルで返す範囲がワークシートを超えてしまうのでエラーになっています。この場合は、数式を確定すると「入力した数式は、ワークシートの端を超えてはみ出す可能性があります。」という注意画面が開き、代替の式「(例)=VLOOKUP(@D:D,A:B,2,0)」が提示されます。
Excelで発生する「#スピル!」エラー2

「はい」を選択すると代替の数式が入力されます。但し、この数式の列範囲の冒頭にある「@」はスピルを無効にする演算子です。スピルが解除されるので、計算結果の一括表示はできません。スピルで実装したいなら、検索値を「D:D」から「D2:D8」に修正します。

「いいえ」を選択すると「#スピル!」エラーとエラーアイコンが表示されますが、ここからエラーの修正を試みるとうまくいかないことが多いようです。動作も重く、メモリ不足からExcel自体がフリーズして操作の続行ができなくなったり、場合によってはExcelを閉じられなくなることさえあります。ここは取り敢えず「はい」をクリックして代替数式を入力し、その後に数式バーで引数の指定範囲を変更する手順をおすすめします。
Excelで発生する「#スピル!」エラー3

この例ではVLOOKUP関数の引数「検索値」の先頭にある「@」を消して、「D:D」を「D2:D8」に修正します。

「#スピル!」エラー3.スピル範囲がテーブル内です

このエラーの原因
スピルをテーブル内で実行した場合に発生するエラーです。
対処法
この場合は、数式を確定すると「入力した数式は複数の値を返すことができますが、テーブルではサポートされていません。」という注意画面が開き、代替の式「(例)=[@単価]*[@数量]」が提示されます。
Excelで発生する「#スピル!」エラー4

この数式はテーブル内でスピルと同じ動作をします。

「はい」を選択すると代替の数式が入力されます。テーブルは構造化参照という独特の数式を使って、計算結果の一括表示が可能です。テーブルではスピルが使えないというより、使う必要がありません。

「#スピル!」エラー4.スピル範囲に結合されたセルがあります

このエラーの原因
スピルで計算結果を表示する範囲に結合されたセルがある場合に発生するスピルエラーです。
対処法
  1. エラーのアイコンをクリック
  2. 「阻害しているセルを選択」をクリック
  3. 結合されたセルが選択される
  4. 「ホーム」タブ➔「配置」にある「セルを結合して中央揃え」をクリックして解除する
  5. エラーが消えて、スピルの結果が表示される

Excelで発生する「#スピル!」エラー5

「#スピル!」エラー5.その他のエラー

上記のスピルエラー以外にも、以下のような不具合が発生することがあります。

  • 配列の指定が多すぎると、メモリ不足でスピルが計算を完了できないことがあります
  • スピルの不具合ではなく、数式そのものに不備があれば「#VALUE!」「#REF!」「#DIV/0!」「#NUM!」「#N/A」等のエラーが返されます
  • スピルで一括表示した範囲に隣接するセルにデータを追加すると「隣接したセルを使用していません」というエラーが出ることがあります。スピル範囲に含めたい場合は再計算します

Excelのエラー一覧

エラー値を知って、Excelを使いこなそう!
エラー表示 読み方 エラーの意味と原因
#DIV/0! ディバイド‐パイ‐ゼロ 0除算エラー。ある数値を0で割り算した時に表示されるエラー。Excelでは0、空白が除数になると#DIV/0!が返る
#VALUE! バリュー 数式に入力した(または参照した)値の形式が間違っている時に表示されるエラー
#N/A ノー・アサイン VLOOKUP・XLOOKUPなどの検索関数で検索値が見つからない時に表示されるエラー
#REF! リファレンス 数式での参照が正しくない、参照するセル範囲が無効である時に表示されるエラー
#NAME? ネーム 関数名や参照したセルやセル範囲に定義された名前が無効である時に表示されるエラー
#NUM! ナンバー 数式に入力(または参照)されている数値が無効である時に表示されるエラー
#NULL! ヌル 半角スペース(参照演算子)で指定した複数の範囲に共通部分がない時に表示されるエラー
#スピル!(#SPILL!) スピル 複数の結果を一括で表示できるスピル機能を妨げる不具合がある時に表示されるエラー ※Microsoft365(旧Office365)、Excel2019、2021対応
記号文字 読み方 詳細
#### ナンバーサイン 日付のセルにマイナスの数値を入力、または桁数の多い数値を入力した時に表示される。俗にシャープシャープとも呼ばれる
nE+n n掛ける10のn乗 Excelで大きすぎる・小さすぎる数値を入力、または12桁以上の数値を入力した時に表示される。指数表示
エラー処理の関数 読み方 詳細
IFNA関数 イフ・エヌ・エー VLOOKUP・XLOOKUPなどの検索関数で検索値が未入力の場合に#N/Aエラーを指定した値に置き換える
IFERROR関数 イフ・エラー 未入力から発生するようなエラーを指定した値に置き換える
ISERROR関数 イズ・エラー エラー値かどうかを判定し、論理値(TRUE・FALSE)で返す ※Excel2003以前のバージョンでIFERRORの代替で使われる事が多い
Excelの一覧
\ この記事をシェアする /
タイトルとURLをコピーしました