UNIQUE関数で複数列の組み合わせからアイテムリストをスピル形式で出力する方法
※最新のExcelではより簡単な手法が使用できるようになりました。以下のページへお進みください。
はじめに
Excelの最新機能を活用すると、複数列のデータから一意なアイテムリストを作成し、それをスピル形式で出力することが可能です(ただし2023年時点では完全なスピルではない)。この記事では、UNIQUE関数を主軸として商品分類とカラーの組み合わせを例に、その方法を詳しく解説します。以下のA1:E32にあるサンプルテーブルを用いて解説をします。
商品番号 | 商品分類 | 価格 | メーカー | カラー |
---|---|---|---|---|
10001 | カラープリンター | 52000 | CEIRO | アイボリー |
10002 | デスクパソコン | 53000 | HERT | ブラック |
10003 | デスクパソコン | 58000 | HERT | アイボリー |
10004 | モノクロプリンター | 27000 | HERT | ブラック |
10005 | カラープリンター | 17000 | CEIRO | アイボリー |
10006 | ノートパソコン | 21000 | THOM | グレー |
10007 | モノクロプリンター | 53000 | CEIRO | アイボリー |
10008 | ノートパソコン | 39000 | HERT | ブラック |
10009 | デスクパソコン | 39000 | HERT | ブラック |
10010 | フルカラースキャナー | 58000 | HERT | アイボリー |
10011 | モノクロプリンター | 46000 | HERT | グレー |
10012 | ノートパソコン | 38000 | HERT | ブラック |
10013 | カラープリンター | 61000 | THOM | グレー |
10014 | カラープリンター | 63000 | THOM | ブラック |
10015 | モノクロプリンター | 21000 | HERT | ブラック |
10016 | モノクロプリンター | 16000 | CEIRO | グレー |
10017 | カラープリンター | 42000 | CEIRO | ホワイト |
10018 | ノートパソコン | 61000 | THOM | グレー |
10019 | カラープリンター | 36000 | THOM | グレー |
10020 | カラープリンター | 35000 | HERT | ホワイト |
10021 | ノートパソコン | 54000 | HERT | ホワイト |
10022 | モノクロプリンター | 48000 | THOM | ホワイト |
10023 | デスクパソコン | 63000 | HERT | ブラック |
10024 | ノートパソコン | 22000 | THOM | ブラック |
10025 | カラープリンター | 41000 | HERT | ブラック |
10026 | フルカラースキャナー | 52000 | HERT | グレー |
10027 | モノクロプリンター | 21000 | CEIRO | アイボリー |
10028 | ノートパソコン | 30000 | CEIRO | ホワイト |
10029 | フルカラースキャナー | 63000 | CEIRO | ブラック |
10030 | フルカラースキャナー | 45000 | HERT | ブラック |
10031 | フルカラースキャナー | 45001 | HERT | ブラック |
必要な関数とその役割
この処理には、主にUNIQUE関数、LET関数、およびTEXTSPLIT関数を使用します。
- UNIQUE関数: 重複しない一意な値のリストをスピル形式で作成します。
- SORT関数:配列を並べ替えてスピル形式で出力します。
- TEXTSPLIT関数: 文字列を指定した区切り文字で分割し、スピル形式で複数の列に展開します。
計算式の作成
以下の計算式は、商品分類とカラーの組み合わせから一意なアイテムリストを作成し、それを2列に分けて出力します。
以下の計算式は、「UNIQUE」関数を使用して、商品分類(B列)とカラー(E列)の組み合わせの一意なリストを作成します。組み合わせる際に区切り文字として “|” を使用して、後で簡単に分割できるようにします。
=UNIQUE(B2:B32&"|"&E2:E32)
好みによっては上記の式をSORT関数で囲んで並べて表示しても問題ありません。こうすると同じものが固まるため見やすくなります。
=SORT(UNIQUE(B2:B32&"|"&E2:E32))
次に、上記で出力した先頭部分を「TEXTSPLIT」関数を使用して、”|” で分割し、結果を2列に展開します。これにより、1列目に商品分類、2列目にカラーが表示されます。残念ながら縦の拡張には対応していないので、まず1つだけ出します。
「TEXTSPLIT」関数を使用して、”|” で分割し、結果を2列に展開します。これにより、1列目に商品分類、2列目にカラーが表示されます。
=TEXTSPLIT(G2,"|")
作成した式をオートフィルで拡張します。これらの操作でH列とI列にて商品分類とカラーの組み合わせアイテムリストが生成されました。
まとめ
この方法を使用することで、複数列のデータから複雑な組み合わせを効率的に処理し、スピル形式で出力することができます。Excelの最新機能を活用することで、データ分析の幅が大きく広がります。
コメント