Excel値のセット (配列とも呼ばれる) を返す数式では、これらの値が隣接するセルに返されます。 この動作はスピルと呼ばれます。

可変サイズの配列を返す数式は、動的配列 数式と 呼ばれる。 現在、スピルに成功した配列を返している数式は、スピルした配列 数式と呼 ばれます。 

これらの種類の数式を理解して使用するために役立つ注意事項を次に示します。 

スピルとはどういう意味ですか?

注: 従来の配列数式と呼ばれる古い配列数式は、常に固定サイズの結果を返します。常に同じ数のセルにスピルします。 このトピックで説明するスピル動作は、従来の配列数式には適用されません。

スピルとは、数式が複数の値を返し、それらの値が隣接するセルに配置されたという意味です。 たとえば、配列を降順で並べ替える =SORT(D2:D11,1,-1) は、高さ 10 行の対応する配列を返します。 ただし、左上のセル (この場合は F2) に数式を入力する必要があるだけで、セル F11 に自動的にスピルします。

セル D2:D11 の値を =SORT(D2:D11,1,-1) で並べ替える

重要なポイント

  • Enter キーを押して数式を確認すると、Excel出力範囲が動的にサイズ変更され、その範囲内の各セルに結果が配置されます。

  • データのリストに対して作用する動的配列数式を記述する場合は、Excelテーブルに配置し、構造化参照を使用してデータを参照すると 便利です。 これは、行がテーブルに追加または削除されると、構造化参照が自動的に調整されるためです。

  • スピルした配列数式は、Excel テーブル自体ではサポートされないので、テーブルの外部のグリッドに配置する必要があります。 テーブルは、独立したデータの行と列を保持する場合に最適です。

  • スピルした配列数式を入力すると、スピル領域内の任意のセルを選択すると、Excelの周囲に強調表示された境界線が配置されます。 領域の外側のセルを選択すると、罫線は表示されなくなります。

    出力範囲が青い枠線で強調表示された配列数式

  • スピル領域内の最初のセルだけが編集可能です。 スピル領域内の別のセルを選択した場合、数式は数式バーに表示されますが、テキストは "ゴースト化" され、変更することはできません。 数式を更新する必要がある場合は、配列範囲内の左上のセルを選択し、必要に応じて変更します。その後、Enter キーを押すと、Excel によって残りのスピル領域が自動的に更新されます。

    ゴースト化された配列数式の画像。配列範囲内の最初のセルではなから編集できない

  • 数式の重複 - 出力範囲をブロックしている何かがある場合、配列数式を入力することはできません。 これが発生した場合、Excelが発生したことを#SPILL!エラーが返されます。 ブロックを取り除くと、数式は正常にスピルされます。 次の例では、数式の出力範囲がデータと別の範囲と重複し、点線の境界線が付いたセルと、スピルできないことを示す値が表示されています。 ブロックしているデータを削除するか、別の場所にコピーすると、数式が予想通りスピルします。

    一部の#SPILL! エラーは、配列数式の出力にスピルを防ぐブロックが発生したことを示します。

  • Ctrl + Shift + Enter (CSE) を使用して入力された従来の配列数式は、互換性の理由から引き続きサポートされますが、使用しなくなりました。 必要に合った場合は、配列範囲内の最初のセルを検索し、数式のテキストをコピーし、レガシ配列の範囲全体を削除して、左上のセルに数式を再入力することで、従来の配列数式を動的配列数式に変換できます。 従来の配列数式を動的配列数式にアップグレードする前に、2 つの計算の違 を認識する必要があります。

  • Excel では、ブック間の動的配列のサポートが制限されており、このシナリオは双方のブックが開いているときにのみサポートされます。 元のブックが閉じられている場合、リンク済みの動的配列数式は更新されるとエラー値 #REF! を返します。

補足説明

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

関連項目

FILTER 関数

RANDARRAY 関数

SEQUENCE 関数

SORT 関数

SORTBY 関数

UNIQUE 関数

Excel での #SPILL! エラー

暗黙的な交差演算子:@

ヘルプを表示

スキルを磨く
トレーニングの探索
新機能を最初に入手
Microsoft Insider に参加する

この情報は役に立ちましたか?

翻訳品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?

フィードバックをお送りいただきありがとうございます!

×