同一个公式,就能将Excel表格在3列和9列的样式之间来回转换

Excel学习世界 2025-04-22 07:22:08

自从有了 365 函数以后,很多需求越来越简便。比如有同学询问的数据表 3 列和 9 列格式来回转换,用的其实是同一个公式。

案例 1:9 列变 3 列

从下图 1 的数据表转置成 3 列,效果如下图 2 所示。

解决方案 1:

1. 在 K2 单元格中输入以下公式 --> 回车:

=WRAPROWS(TOCOL(A2:I8,1),3)

公式释义:

TOCOL(A2:I8,1):TOCOL 函数的作用是将区域内的所有单元格排列成一列;第二个参数 1 表示忽略空白;

WRAPROWS(...,3):

wraprows 函数的作用是将单行或单列数据均分成 N 列逐行排列;

语法为 WRAPROWS(单行或单列数组,列数,[填充值]);

此处公式中的第二个参数为 3,即表示转换成 3 列

案例 2:3 列变 9 列

将下图 1 转换成 9 列,效果如下图 2 所示。

解决方案 2:

1. 在 E2 单元格中输入以下公式:

=WRAPROWS(TOCOL(A2:C21),9)

公式释义:

TOCOL(A2:C21):将参数中的区域变成一列;

WRAPROWS(...,9):将上述结果转换成 9 列;

由于转置后缺了一组,就会出现错误值,此时就需要用上 WRAPROWS 函数的第三个参数了。

2. 在 WRAPROWS 函数中添加第三个参数"",最终公式如下:

=WRAPROWS(TOCOL(A2:C21),9,"")

公式释义:

加上 "" 后表示最后一行缺少数据的部分用“空”填充;

0 阅读:1

Excel学习世界

简介:Excel 学习交流