K-fix Learning & Playing

15 スピル機能


スピル機能は、Excel 2021およびMicrosoft 365から導入された革新的な機能です。従来、数式を入力したセルだけでなく、隣接するセルにも自動的に結果を表示することができます。スピルを利用した数式を「動的配列数式」と呼びます。
まるで数式がセルから溢れ出すように結果が広がることから、この名前が付けられました。
この機能は、データ分析やレポート作成などの作業を大幅に効率化することができます。従来の手作業によるコピー&ペーストや複雑な数式の記述が不要になり、ミスも減らすことができます。
例えば、「=A2:A5」と入力すると、A2からA5までの値が隣接するセルにスピルされます。ちなみに「スピル(spill)」とは「溢れる、こぼれる」という意味です。
スピルされたセルは「ゴースト」と呼ばれ、数式を直接編集したり削除したりできません。ゴーストのセルに値を入力するとスピルエラーが表示されます。スピル機能には、以下のようなメリットがあります。

  • 配列数式やオートフィルなどを使わずに、複数のセルに数式を入力できます。
  • 数式のセル範囲を変更すると、スピル範囲も自動的に変わります。
  • スピル範囲演算子「#」を使って、スピル範囲全体を参照できます。
  • スピル機能を使えば、数式のコピー、絶対参照を設定が例外を除いて不要になります。
  • スピル機能を使った関数(XLOOKUP, FILTER, SEQUENCEなど)を利用できます。

また、スピル機能には以下のような注意点もあります。

  • スピル範囲に空白でないセルがあると、スピルエラー「#スピル!」や「#SPILL!」が表示されます。
  • セルの結合やテーブルにはスピル機能が使えません。
  • スピル機能を使わない場合は、数式の頭に「@」を付けます。

スピル機能に対応した関数には以下のような関数があります。

  • FILTER:条件に一致するデータを抽出する関数です。例えば、=FILTER(A2:C10,B2:B10=“東京”)とすると、A2:C10の範囲からB列が東京の行だけをスピルします。
  • SORT:データを並べ替える関数です。例えば、=SORT(A2:C10,2,-1)とすると、A2:C10の範囲をB列の降順でスピルします。
  • SORTBY:データを複数の基準で並べ替える関数です。例えば、=SORTBY(A2:C10,B2:B10,-1,C2:C10,1)とすると、A2:C10の範囲をB列の降順、C列の昇順でスピルします。
  • UNIQUE:重複するデータを除いて一意の値を返す関数です。例えば、=UNIQUE(A2:A10)とすると、A2:A10の範囲から重複しない値だけをスピルします。
  • SEQUENCE:連続した数値の配列を作成する関数です。例えば、=SEQUENCE(3,4,10,2)とすると、3行4列の配列に10から始まり2ずつ増える数値をスピルします。
  • RANDARRAY:乱数の配列を作成する関数です。例えば、=RANDARRAY(3,4,1,100,TRUE)とすると、3行4列の配列に1から100までの整数の乱数をスピルします。

スピル機能に対応した関数は、次々に追加されているのが現状です。これからは、スピルを使った数式づくりが主流になるでしょう。