在EXCEL里将多行的列按规定转换成横向排列的多列?

2025-03-15 06:45:34
推荐回答(2个)
回答1:

在D1单元格输入以下公式,然后向右向下填充公式

=OFFSET($A$1,MOD(ROW(A1)-1,8)+INT((COLUMN(A1)-1)/3)*8,MOD(COLUMN(A1)-1,3))

如果是在Sheet2中得到Sheet1的转换数据,那么在Sheet2的A1单元格输入以下公式,然后向右向下填充公式

=OFFSET(Sheet1!$A$1,MOD(ROW(A1)-1,8)+INT((COLUMN(A1)-1)/3)*8,MOD(COLUMN(A1)-1,3))

 

详见附图的同表举例

回答2:

也要往下排啊,我原来以为只要往右排,那把第一个换成混合引用就可以了:

=OFFSET(Sheet1!$A1,INT((COLUMN(A:A)-1)/3)*8,MOD(COLUMN(A:A)-1,3))


另外,下拉到第8行就不要再往下拉,否则公式要修正下,才不会出现第9行后的数据。


COLUMN(A:A)也可以换成COLUMN(A1)或COLUMN(A$1)