業務でなにかと利用する機会の多いExcelですが、Excel for Microsoft365とExcel2021に実装されている「スピル」をご存じでしょうか?
私も最近存在を知り、実際に使ってみてその利便性に衝撃を受けました。もっと早く知っていれば良かった…と後悔するくらいです。
もし「まだ使ったことないよー」という方がおられましたら、この記事を参考に是非試してみてくださいね。
■スピルとは
これまでは、数式を入力したセルにだけ数式の結果が表示されるのが常識でした。しかし、スピルを使うと、数式が複数の結果を返す場合は、数式を入力したセルだけでなく、隣接するセルにも結果が表示されます。
他のセルにいちいち同じ数式をコピーする手間を省くことができ、作業の効率が上がります。また、数式を変更すれば隣接するセルにも自動的に反映されるため、よくある「一ヶ所だけ数式の変更が漏れていた!」といったミスも防ぐことができます。
■基本的な使い方
スピルの基本的な使い方です。
例えば、セルA1からA4に入力された値をセルB1からB4にも表示させるには、セル【B1】に「=A1:A4」と入力してEnterキーを押します。
すると、下図のようにセルB1からB4に値が表示されます。
数式を入力したのはセルB1だけですが、隣接するB2からB4まで結果が自動的に表示されました。これが「スピル」になります。
またセルB2の数式バーを見ると、セルB1と同じ数式「=A1:A4」が表示されており、文字の色が薄くなっています。これを「ゴースト」と言います。
■スピル範囲の指定方法
スピル範囲の値を関数などから参照する場合、スピル範囲演算子「#」を使用します。
例えば、セルB1からB4までの平均値を求める場合、これまでは「=AVERAGE(B1:B4)」と記入していましたが、「=AVERAGE(B1#)」と入力することで自動的にスピル範囲の平均値が算出されます。
B1セルのスピル範囲を変更すると、C1セルのAVERAGEの範囲も自動的に追従しますので、AVERAGEのパラメータの修正が漏れていて計算結果が合わないといったミスを防ぐことができます。
■スピルの応用
スピルは様々な関数で利用できます。
以下の例では、XLOOKUP関数でスピルを使用して、セルF3に入力した部品コードに合致した部品名、単価、単位(B列からD列の値)を取得します。
やり方は、セルG3に「=XLOOKUP(F3,A3:A6,B3:D6)」と入力するだけです。
これで、セルF3に部品コードを入力すると、入力した部品コードに応じてセルG3からI3に値が表示されます。
■スピルで効率的な作業を
このようにスピルを活用すると、数式の入力が最小限で済み、作業が劇的に楽になります。Excelにはスピル以外にもまだまだ活用できていない便利な機能があると思いますので、これからも探していこうと思います。