当前位置:首页教育技巧excel技巧excel数据库

Excel将多列数据转换为单列数据的教程

减小字体 增大字体 2023-06-01 10:46:24


  Excel表格中将多行数据转换为单行的方法有很多,下面小编会为大家介绍怎么用公式将其转换。

  假如Sheet1表的A2:E7区域有6行5列的数据需要转换到Sheet2表的A列,如图所示。

  一、按先行后列的顺序转换

  即先提取第一行的数据,再依次其他各行。在Sheet2的A1单元格输入公式:

  =OFFSET(Sheet1!A$2,ROW(A5)/5-1,MOD(ROW(A5),5))

  或:

  =OFFSET(Sheet1!$A$2,INT((ROW(A1)-1)/5),MOD(ROW(A1)-1,5))

  或:

  =INDIRECT(“Sheet1!”&ADDRESS(INT((ROW(A1)-1)/5)+2,MOD(ROW(A1)-1,5)+1,4))

  然后向下填充公式到最后一个数据,结果如下图。

  第一个公式中OFFSET函数的第二个参数“ROW(A5)/5-1”在某些单元格中可能会返回小数,OFFSET函数会自动取整。后两个公式中的 “INT((ROW(A1)-1)/5)”在向下填充时依次生成5个相同数为一组的序列数“0、0、0、0、0、1、1、1、1、1、2、2、2、2、 2……”,“MOD(ROW(A1)-1,5)”则依次生成“0、1、2、3、4”并循环。本例为6行5列,如果为N行M列,可将公式中用红色标识的数字 “5”改为M。

  二、按先列后行的顺序转换

  即先提取第一列的数据,再依次其他各列。在Sheet2的A1单元格输入公式:

  =OFFSET(Sheet1!A$2,MOD(ROW(A6),6),ROW(A6)/6-1)

  或:

  =OFFSET(Sheet1!$A$2,MOD(ROW(A1)-1,6),INT((ROW(A1)-1)/6))

  或:

  =INDIRECT(“Sheet1!”&ADDRESS(MOD(ROW(A1)-1,6)+2,INT((ROW(A1)-1)/6)+1,4))

  本例为6行5列,如果为N行M列,可将公式中用红色标识的数字“6”改为N。

  以上内容便是Excel将多列数据转换为单列数据的教程了,大家可以学习一下,大家可以关注教程之家,里面有更多精彩教程带给大家。

评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

【免责声明】本站信息来自网友投稿及网络整理,内容仅供参考,如果有错误请反馈给我们及时更正,对文中内容的真实性和完整性本站不提供任何保证,不承但任何责任。
版权所有:学窍知识网 Copyright © 2011-2026 www.at317.com All Rights Reserved .