Applies ToExcel for Microsoft 365 Excel for Microsoft 365 for Mac Excel for the web Excel 2024 Excel 2024 for Mac Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2019 for Mac Excel 2016 Excel for iPad Excel Web App Excel for iPhone Excel for Android タブレット Excel for Android スマートフォン

#SPILL エラーは、数式が複数の結果を返し、Excel がグリッドに結果を返すことができない場合に返されます。 これらのエラーの種類の詳細については、次のヘルプ トピックを参照してください。

このエラーは、スピルされた配列数式のスピル範囲が空白でない場合に発生します。

Excel での #SPILL! error - スピル範囲が空白ではない

数式を選択すると、意図したスピル範囲を示す破線の境界線が表示されます。 数式を選択すると、エラー チェック アラートが表示されます。

エラー チェック アラートを選択し、[ 妨げセルの選択] オプションを選択 して、妨げているセルをすぐに移動します。 その後、エラーをクリアするには、妨げているセルのエントリを削除するか、移動します。 障害物がクリアされるとすぐに、配列の数式は意図したとおりにこぼされます。

Excel は揮発性であり、計算パス間でサイズが変更されるため、スピルされた配列のサイズを判断できませんでした。 たとえば、次の数式によってこの #SPILL がトリガーされます。 エラーを返します。

=SEQUENCE(RANDBETWEEN(1,1000))

動的配列のサイズ変更により、スプレッドシートが完全に計算されるように、追加の計算パスがトリガーされる場合があります。 これらの追加のパス中に配列のサイズが変更され続け、安定しない場合、Excel は動的配列を #SPILL! として解決します。

このエラー値は一般に、RAND、 RANDARRAY、および RANDBETWEEN 関数の使用に関連付けられています。 OFFSETINDIRECTTODAY などの他の揮発性関数は、計算パスごとに異なる値を返すわけではありません。 

たとえば、次の例のようにセル E2 に配置した場合、数式 =VLOOKUP(A:A,A:C,2,FALSE) は、以前はセル A2 の ID のみを参照していました。 ただし、動的配列 Excel では、数式によって #SPILL が発生します。 Excel は列全体を検索し、1,048,576 件の結果を返し、Excel グリッドの末尾にヒットするため、エラーです。

Excel での #SPILL! セル E2 の =VLOOKUP(A:A,A:D,2,FALSE) で発生したエラー。 数式をセル E1 に移動すると、正しく機能します。

この問題を解決するには、次の 3 つの簡単な方法があります。

#

方法

数式

1

関心のある参照値のみを参照します。 このスタイルの数式は動的配列を返しますが、Excel テーブルでは機能しません。 

=VLOOKUP(A2:A7,A:C,2,FALSE) を使用して、#SPILL にならない動的配列を返します。 エラーを返します。

=VLOOKUP(A2:A7,A:C,2,FALSE)

2

同じ行の値だけを参照し、数式を下にコピーします。 この従来の数式スタイルはテーブルで動作しますが、動的配列は返されません

従来の VLOOKUP は、単一のlookup_value参照 (=VLOOKUP(A2,A:C,32,FALSE) で使用します。 この数式は動的配列を返しませんが、Excel テーブルで使用できます。

=VLOOKUP(A2,A:C,2,FALSE)

3

@演算子を使用して暗黙的な積集合を実行し、数式を下にコピーすることを Excel に要求します。 このスタイルの数式はテーブルで機能しますが、動的配列は返されません

@ 演算子を使用し、コピーダウン: =VLOOKUP(@A:A,A:C,2,FALSE)。 この参照スタイルはテーブルでは機能しますが、動的配列は返されません。

=VLOOKUP(@A:A,A:C,2,FALSE)

Excel テーブルでは、スピルされた配列数式はサポートされていません。 数式をテーブルから移動するか、テーブルを範囲に変換してみてください ([テーブル デザイン] > [ツール] >[範囲に変換] を選択します)。

Excel での #SPILL! error - テーブルの数式

入力しようとしているスピルされた配列の数式によって、Excel のメモリ不足が発生しました。 小さい配列または範囲を参照してみてください。

スピルされた配列数式は、マージされたセルにスピルできません。 対象 のセルの結合を解除 するか、結合されたセルと交差しない別の範囲に数式を移動してください。

Excel での #SPILL! error - マージされたセルにスピル

数式を選択すると、意図したスピル範囲を示す破線の境界線が表示されます。 数式を選択すると、エラー チェック アラートが表示されます。

エラー チェック アラートを選択し、[ 妨げセルの選択] オプションを選択 して、妨げているセルをすぐに移動できます。 マージされたセルがクリアされるとすぐに、配列数式は意図したとおりにスピルします。

Excel が認識しないか、このエラーの原因を調整できません。 数式にシナリオに必要なすべての引数が含まれていることを確認してください。

補足説明

関連項目

Excel Tech Communityで、いつでも専門家に質問できます。また、コミュニティでは、サポートを受けられます。

FILTER 関数

RANDARRAY 関数

SEQUENCE 関数

SORT 関数

SORTBY 関数

UNIQUE 関数

動的配列とスピル配列の動作

演算子の共通部分: @

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。