今回は、ExcelのWRAPROWS関数とWRAPCOLS関数を使って、1行や1列に並んだデータを指定した個数ごとに折り返し、表の形に配置する方法と、使うときのコツを紹介します。
この記事は、Microsoft 365のExcel(Windows版・Mac版)を前提にしています。どちらの関数も新しい関数のため、古い買い切り版のExcelでは使えない場合があります。セルに「=WRAP」と入力して関数の候補に表示されるかで、お使いの環境を確認できます。ファイルを他の人と共有する場合は、相手の環境でも使えるかを確認しておくと安心です。
WRAPROWS関数とWRAPCOLS関数でできること
WRAPROWS関数とWRAPCOLS関数は、1行または1列のデータ(ベクトル)を、決めた数ごとに区切って2次元の表に並べ替える関数です。結果は数式を入力したセルを起点に、右下へ自動的に広がって表示されます(スピル)。元のデータはそのまま残るため、元データを壊さずに見やすい一覧を作れます。
たとえば、次のような場面で役立ちます。
- 縦1列に入力された名前を、4人ずつ横に並べた座席表や班分け表にしたい
- 他のシステムから貼り付けた「項目名・値・項目名・値…」の1列データを、2列の表に整えたい
- 長い商品コードの一覧を、印刷しやすいように複数列に分けて配置したい
2つの関数の違い
2つの関数の違いは、データを並べる向きです。
- WRAPROWS関数:データを行ごとに並べます。左から右へ指定した数だけ入れたら、次の行へ折り返します。
- WRAPCOLS関数:データを列ごとに並べます。上から下へ指定した数だけ入れたら、次の列へ折り返します。
文章を横書きで読むような並びにしたいならWRAPROWS関数、新聞の段組みのように縦に読む並びにしたいならWRAPCOLS関数、と覚えておくと選びやすくなります。
構文と引数の意味
2つの関数は、引数の構成が同じです。
=WRAPROWS(ベクトル, 折り返し数, [埋める値])
=WRAPCOLS(ベクトル, 折り返し数, [埋める値])
- ベクトル:折り返したい1行または1列のセル範囲や配列です。
- 折り返し数:WRAPROWS関数では1行に入れる値の最大数、WRAPCOLS関数では1列に入れる値の最大数です。
- 埋める値:データの数が割り切れず、最後の行(列)に空きができたときに入れる値です。省略すると#N/Aが表示されます。
基本的な使い方
WRAPROWS関数で横に並べる
A2からA13に12人の名前が縦に入力されていて、これを1行に4人ずつ並べたい場合は、結果を表示したいセルに次のように入力します。
=WRAPROWS(A2:A13, 4)
1行目に1人目から4人目、2行目に5人目から8人目、3行目に9人目から12人目が並び、3行4列の表になります。