在工作中,有时我们需要将一组数据拆分为多组。例如将1列名单拆分为7组。本文和大家分享如何将1列数据拆分为多行多列。
一、案例
如下图所示,要求将A1:A9拆分为3行3列,效果如C1:E3所示。
二、解决方法
如下图所示,在C1单元格输入以下公式:
=INDEX($A$1:$A$9,ROW()+(COLUMN()-3)*3)
拖动填充柄向下向右复制公式。
公式解析:
(1)如下图所示,在G1:I3输入1至9。在C1单元格输入公式
=INDEX($A$1:$A$9,G1),拖动填充柄向右向下复制公式。
可以看到该公式可以将A1:A9拆分为3行3列。
(2)如何使用公式产生像G1:I3中1至9的数值呢?如下图所示,C5:E7和G5:I7对应单元格数值相加,即可得到G1:I3中数值1至9。
G5:I7中的数值可以使用ROW函数产生。ROW()返回公式所在行的行号。当在C1:E3输入公式时,ROW()可以产生序列“1、2、3、1、2、3、1、2、3”。
C5:E7中的数值可以使用COLUMN函数产生。COLUMN()返回公式所在列的列号。当在C1:E3输入公式,(COLUMN()-3)*3可以产生序列“0、0、0、3、3、3、6、6、6”。
将ROW函数和COLUMN函数得到的数值相加,即可产生数值1至9。