XLOOKUP関数のスピル
LEVEL 6 の最後は、これまで学んだ XLOOKUP と スピル の組み合わせです。
レッスン051・052で XLOOKUP を学んだとき、検索値も戻り値も「1つの値」を想定していました。今回は、その XLOOKUP が スピルと出会ったときに何が起きるか を見ていきます。
結論を先に言ってしまうと、「一気に複数の値を取り出せる」 ようになります。
おさらい:従来の XLOOKUP
まずは復習。商品マスタから1つの値を取り出す、いつもの書き方です。
| A | B | C | D | |
|---|---|---|---|---|
| 1 | 商品コード | 商品名 | 単価 | 在庫 |
| 2 | P001 | コーヒー | 400 | 50 |
| 3 | P002 | 紅茶 | 350 | 30 |
| 4 | P003 | ケーキ | 500 | 20 |
「P002 の商品名は?」を取り出すなら、
=XLOOKUP("P002", A:A, B:B)
結果:紅茶
これが基本動作でした。商品名だけが欲しければ B列、単価が欲しければ C列、と 欲しい列を1つ指定 する書き方です。
戻り範囲を拡張する
ここでは、戻り範囲を拡張して スピルによる出力を試してみましょう。
「P001 の情報をまとめて取り出したい」というケースでは、戻り範囲 をすべて入れるだけです。
=XLOOKUP(F2, A:A, B:D)
結果:

G2 に数式を1つ入れただけで、商品名・単価・在庫の、3つの値が、横にスピルしました。これが、戻り範囲を広げたときの動きです。
また、縦にスピルもできます。
=XLOOKUP(F2:F4, A:A, B:B)
結果:

すると、3つの商品コードに対応する商品名が、縦に一気に並びます。
これが、検索値スピルの動きです。F列に商品コードを並べておけば、その隣に、対応する商品名が一気に並ぶ。VLOOKUP関数だけで済ませていた時代では考えられないほど進化をしました。
LEVEL 6 を終えて
スピル、UNIQUE、SORT、FILTER、TRANSPOSE、SEQUENCE、そして XLOOKUP × スピル ── LEVEL 6 で扱った関数たちは、すべて スピル前提で設計された、新世代の Excel を象徴するものです。
これまでの Excel が「1つのセルに1つの数式」だったとすれば、これからの Excel は「1つの数式が、必要な範囲に勝手に広がる」。発想がまったく変わります。
ここまでで身についたのは、
- スピル機能の基本(数式が複数セルにこぼれる体験)
- UNIQUE:重複の除去
- SORT:並び替え
- FILTER:絞り込み
- TRANSPOSE:縦↔横の入れ替え
- SEQUENCE:連番の生成
- XLOOKUP × スピル:一気に複数の値を取り出す
これらを 組み合わせる と、データ整形・集計・検索が、ぐっと滑らかにできるようになります。従来の Excel から一段階レベルアップした、という実感を持っていただけたら嬉しいです。
次の LEVEL では、また別の角度から Excel を深掘りしていきます。ここまでお疲れさまでした。
まとめ
- XLOOKUP は スピルと組み合わせると、複数列・複数行を一気に取り出せる
- 戻り範囲を複数列にすれば、横にスピル
- 検索値を範囲にすれば、縦にスピル
- 両方組み合わせれば、複数行 × 複数列の塊を一気に展開
- 数式を「コピーして広げる」必要がほぼなくなった
- これがモダン Excel の世界
ショートカット
※このレッスンに対応するショートカットはありません。