如何将Excel表格中的多列内容合并到一列

目录

方法一:对于数据量不大的情况,可以考虑如下方法:

方法二:当数据量过大或存在多张需要填充的表格时


方法一:对于数据量不大的情况,可以考虑如下方法:

        步骤一:在第一列的最下方一个单元格内设置=B1,B1表示需要填充的下一列中第一个数据位置

        步骤二:先向右填充至最后一列,再向下填充直到第一列出现0为止。

         步骤三:删除多余的列和0,保留第一列即可。

方法二:当数据量过大或存在多张需要填充的表格时

        手动填充的方法便不再适用,此时可以考虑如下函数法,需要确保数据集所有列的行数都相同(此函数较为冗长,还需进一步优化,如果行数不都相同可以参考最下面的方法):

        步骤一:在第一列前插入新的一列,并设置足够的序列号。

        步骤二: 首先在需要合并的数据最下方留出一行,同时在数据第二列(C列)空白行下方一格输入需要复制的第二列数据单元格的相对位置(C1),最后在该单元格(C1)下方输入如下函数,并设置好参数XX和NUM后回车:

=IF(ISBLANK(INDIRECT(ADDRESS(ROW(INDIRECT(XX))+1,COLUMN(INDIRECT(XX)),4)))=TRUE,ADDRESS(ROW(INDIRECT(XX))-NUM,COLUMN(INDIRECT(XX))+1,4),ADDRESS(ROW(INDIRECT(XX))+1,COLUMN(INDIRECT(XX),4))

函数ISBLANK()用于判断单元格是否为空。函数INDIRECT()引用文本格式地址C1的数据。函数ADDRESS()将指定的行和列转为单元格相对地址(C2),函数ROW(),COLUMN()输出指定地址的单元格行数和列数,数值NUM表示数据集总行数减去一,在本例中NUM=5。XX表示第一个引用地址,本例中XX=C8。

整个函数的逻辑是:根据给出的单元格相对地址,判断其下方单元格是否为空值,如果不是则输出其向下一格的单元格坐标,如果是则输出该列右边一列的第一个单元格相对坐标。这里的偏移值可以根据需要自由设定。

 

         步骤三:双击C9右下角的十字架进行快速填充。填充结束后在B列与填充后的起始位置B8处输入函数=INDIRECT(C8)后回车并快速填充。最后保留填充后的数据为文本格式或数值格式,删除多余的列和空白行。

         如果需要合并的数据集每列数据的行数不都相同(如下图),可以考虑使用下面的替换公式:

NUM=COUNTA(INDIRECT(ADDRESS(1,COLUMN(INDIRECT(XX))+1,4)):INDIRECT(ADDRESS(10000,COLUMN(INDIRECT(XX))+1,4)))

该公式将NUM值替换为当前单元格下右边一列所有非空数据的个数。

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值