入力しようとしている、こぼれた配列数式がワークシートの範囲を超えています。 範囲または配列を小さくしてもう一度やり直してください。
次の例では、数式をセル F1 に移動するとエラーが解決され、数式は正しくスピルされます。
一般的な原因: フル列参照
VLOOKUPの数式を作成する方法については、 lookup_value引数を指定してください。 動的な配列機能を備えた excel では、excel では、数式と同じ行の値が考慮され、その他の値は無視されます。 VLOOKUP では1つの値のみが想定されます。 動的な配列の導入により、lookup_value に提供されるすべての値が Excel で考慮されます。 つまり、列全体が lookup_value 引数として指定されている場合、Excel は列内のすべての1048576値を参照しようとします。 操作が完了すると、グリッドにスピルされ、グリッドの終わりに達する可能性が高いため、#SPILL になります。 エラーが表示されます。
たとえば、次の例のようにセル E2 に配置した場合、数式 = VLOOKUP (2、2、FALSE) は、以前はセル A2 で ID を検索したことになります。 ただし、動的配列 Excel では、数式によって #SPILL が発生します。 エラーが発生したため、Excel は列全体を参照し、1048576の結果を返し、Excel grid の末尾に達します。
この問題を解決するには、3つの簡単な方法があります。
# |
方法 |
数式 |
---|---|---|
1 |
目的の検索値だけを参照します。 このスタイルの数式では、動的配列が返されますが、 Excel テーブルでは動作しません。
|
= VLOOKUP (A2: A7, 2, 2, FALSE) |
2 |
同じ行の値のみを参照してから、数式を下にコピーします。 この従来の数式スタイルは表内では動作しますが、動的配列は返されません。
|
= VLOOKUP (A2, 2, 2, FALSE) |
3 |
Excel に @ 演算子を使用して暗黙的な交差を実行し、次に数式をコピーするように依頼します。 このスタイルの数式はテーブルで動作しますが、動的配列は返されません。
|
= VLOOKUP (@A: A, 式 C, 2, FALSE) |
補足説明
Excel Tech Community では、いつでも専門家に質問できます。Microsoft コミュニティでは、サポートを受けられます。また、Excel User Voice では、新機能についての提案や改善案を送信することができます。