Excel公式技巧106:将表数据转换成列数据

2021-09-22 10:19:59 浏览数 (1)

这是最近一位网友问我的问题。如下图1所示,需要使用公式将单元格区域A1:D4中的数据转换成单元格区域G1:H10中的数据。

图1

刚开始看到这个问题,考虑得复杂了些,我想使用一个公式来做到,但没能实现,使用两个公式可以轻松完成。

这是一个典型的循环取数示例。对于列G来说,每3次获取同一个数据;对于列H来说,每3次获取同一行中3个单元格中的数据。

这样,使用:

INT((ROWS(H$1:H1)-1)/3) 1

将公式向下拖拉复制的话,随着行数的增加,将依次获取:

1,1,1,2,2,2,3,3,3

使用:

MOD((ROWS(H$1:H1)-1),3) 1

将公式向下拖拉复制的话,随着行数的增加,将依次获取:

1,2,3,1,2,3,1,2,3

将其作为INDEX函数的参数,即可获取相应单元格中的值。

因此,在单元格G2中输入公式:

=INDEX(A2:A4,INT((ROWS(H

向下拖拉复制至单元格G10。

在单元格H2中输入公式:

=INDEX(B2:D4,INT((ROWS(H1:H1)-1)/3) 1,MOD((ROWS(H1:H1)-1),3) 1)

向下拖拉复制至单元格H10。

很简单!

0 人点赞