Excelで同じセル・値を指定回数だけ繰り返し表示させる方法
Excelの EXPAND関数を使って、同じセルや値を指定された回数だけ繰り返し表示する方法について解説します。
同じデータを1つのセルの中で繰り返させるにはREPT関数を使います。しかしREPT関数自体にはセルを分けて繰り返す性質は持っていません。
この記事では、繰り返しデータを別のセルに表示させることができるEXPAND
関数の構造と各引数の役割を詳しく説明します。
EXPAND関数の構造
EXPAND関数は、指定した次元に配列を展開する関数です。この関数を使用することで、同じセルや値を指定した回数だけ繰り返し表示させることができます。
元の配列より大きく指定した場合には拡張部分に「Pad_with」で指定した値を表示させるという性質を持っています。同じセルの繰り返しにはこの性質を利用します。
以下の説明は「横に繰り返させる場合」の説明です。「縦に繰り返させる場合」には「Rows」と「Columns」を入れ替えてセットしてください。
=EXPAND(Array, Rows, Columns, Pad_with)
各引数の意味は以下の通りです:
- Array: 展開する配列。ここでは、繰り返し表示したいセルや値を指定します。
- Rows: 展開後の行数。ここでは常に「1」を指定します。
- Columns: 展開後の列数。ここでは、繰り返し回数を指定します。
- Pad_with: 配列を埋める値。ここでは、繰り返し表示するセルや値を指定します。
具体的な使用例
例えば、以下の表を基に考えてみます。以下の説明は「横に繰り返させる場合」の説明です。「縦に繰り返させる場合」には「Rows」と「Columns」を入れ替えてセットしてください。
回数 | 元データ |
---|---|
2 | アジ |
3 | サバ |
4 | スズキ |
5 | イワシ |
6 | コハダ |
この表のデータを使って、C列以降に元データを繰り返し表示させる計算式を設定します。
計算式の入力
例えば、C2セルに以下の計算式を入力します。
下記のように縦並びのデータを横に展開する際は、「Rows:1、Columns:回数」と指定します。
横並びのデータを縦に展開する際は、「Rows:回数、Columns:1」と指定してください。
=EXPAND(B2, 1, A2, B2)
オートフィルとその結果
この式をC2セルからC6セルまでオートフィルします。各セルに入力された式は以下のようになります。繰り返し部分は右方向へスピルします。
=EXPAND(B2, 1, A2, B2) =EXPAND(B3, 1, A3, B3) =EXPAND(B4, 1, A4, B4) =EXPAND(B5, 1, A5, B5) =EXPAND(B6, 1, A6, B6)
結果として、C列以降に以下のように表示されます:
回数 | 元データ | ||||||
---|---|---|---|---|---|---|---|
2 | アジ | アジ | アジ | ||||
3 | サバ | サバ | サバ | サバ | |||
4 | スズキ | スズキ | スズキ | スズキ | スズキ | ||
5 | イワシ | イワシ | イワシ | イワシ | イワシ | イワシ | |
6 | コハダ | コハダ | コハダ | コハダ | コハダ | コハダ | コハダ |
コピー元データを配列とするならば
コピー元のデータに「アジ、サバ、スズキ、……」のようにセルデータを用いましたが、
=SEQUENCE(5)&"月号"
のような動的配列数式をセットするならば、次の記事を参照してください。
コメント