如何用公式将多列内容合并为一列

送人玫瑰,手有余香,请将文章分享给更多朋友

动手操作是熟练掌握EXCEL的最快捷途径!

经常有朋友会私信我,问如何用公式将多列内容合并为一列内容。例如下面的例子。

相对来讲,使用公式会比较复杂,要用到多维引用的技术。下面,我们就这个例子向大家介绍如何使用公式来完成任务。

01

首先,我们复制标题“单据类型”到单元格G1,如下图。

在单元格G1中输入公式“=IFERROR(INDIRECT(TEXT(MOD(SMALL(IF(($G$1=$A$1:$E$1)*($A$2:$E$16<>""),ROW($A$2:$E$16)/1%+COLUMN($A:$E)*10001),ROW(A1)),10^4),"r0c00"),),"")”,三键回车并向下拖曳即可。

思路:

  • ($G$1=$A$1:$E$1)*($A$2:$E$16<>"")部分,是这个题目的两个条件,标题名要等于“单据类型”,同时单元格不为空

  • 在满足上述条件下,IF函数返回ROW($A$2:$E$16)/1%+COLUMN($A:$E)*10001这样的结果。它表示将数据区域的行号扩大100倍,数据区域的列号扩大10001倍,同时两者相加,结果是一个5位数,从右侧第1、2位数表示列号,3、4位表示行号

  • SMALL(IF(($G$1=$A$1:$E$1)*($A$2:$E$16<>""),ROW($A$2:$E$16)/1%+COLUMN($A:$E)*10001),ROW(A1))部分,利用SMALL函数依次提取最小的值。由于是将列号扩大10001倍,因此数据提取的方向是纵向的

  • MOD(SMALL(IF(($G$1=$A$1:$E$1)*($A$2:$E$16<>""),ROW($A$2:$E$16)/1%+COLUMN($A:$E)*10001),ROW(A1)),10^4)部分,将提取到的数值对10^4求余,得到的结果就是上面提到的,从右侧的4位数字,其实也就是行号和列号。这里也可以使用RIGHT函数来提取

  • 接下来利用TEXT函数来将数据格式转化为“r0c00”的格式

  • 利用INDIRECT函数提取到真正的数据。这里,如果数据格式是“r0c00”,那么INDIRECT函数必须要写成INDIRECT((),"")的形式

  • 最后进行容错处理

有关将多列内容合并为一列的更多的内容,请参看帖子如何用公式将多列合并为一列

-END-

长按下方二维码关注EXCEL应用之家

面对EXCEL操作问题时不再迷茫无助

我就知道你“在看”

推荐阅读
(0)

相关推荐

  • 分享几个有趣好玩的Excel公式~

    大家晚上好! 自动累计 在C2单元格输入,=SUM($B$2:B2),下拉公式,就会自动累计. 查找关键词 通过下方的公式,可以查找关键词 =LOOKUP(9^9,FIND($D$2:$D$5,A2) ...

  • cell+多维引用+n(if(1,))+mmult置换2列数据

    小伙伴们好.昨天说了mmult置换2列数值或2列文本的方法,并且在最后给大家留了个思考题,如何置换1列文本和1列数值呢?今天就来说说这个问题.其实大体的思路和昨天的差不多,只是在降维处理的方式上有所不 ...

  • excel函数

    ADDRESS函数用于按照给定的行号和列标,建立文本类型的单元格地址.其语法如下: ADDRESS(row_num,column_num,abs_num,a1,sheet_text) 其中,row_n ...

  • Execl--获取任意当前单元格的前2个单元格数据做运算

    2020-08-27 19:13:38 分类专栏: 办公软件 文章标签: 办公软件 excel 单前单元格数据 单前单元格位置 单前单元格前单元格数据 ---------------- 版权声明:本文 ...

  • EXCEL如何将两列数据合并为一列并在中间加符号

    EXCEL具有多列的功能,那么如何将两列,转化为一列呢,转化了之后,是否可以在两列之间,加上一些符号呢 工具/原料 EXCEL2007 方法/步骤 1 首先在电脑上打开一个新的工作簿,用来输入数据 2 ...

  • 【源数据才是大麻烦】如何将多列数据合并为一列数据

    我们,让Excel变简单 我们经常会拿到这样的数据: 相同类型的数据放在了多列上 这样的数据非常不便于分析,我们需要将它们放在一列上.复制粘贴当然是个办法,但是如果数据比较多的话,我们有更简单的办法. ...

  • 如何用公式将多列合并为一列

    点击上方 蓝色 文字  关注我们吧! 送人玫瑰,手有余香,请将文章分享给更多朋友 动手操作是熟练掌握EXCEL的最快捷途径! EXCEL函数总是可以给我们带来不断的惊喜.前一段时间,一位朋友问我了一个 ...

  • 【技巧1001-12】- Excel多列内容合并的6种方法

    方法1:粘贴板法,也是我非常推荐的方法 首选复制要合并的多列内容,点击开始-剪切板,打开粘贴板 双击需要粘贴的单元格,点击粘贴板中的内容 同时复制,粘贴到单元格的内容 选择一个单元格,再粘贴,内容就合 ...

  • 一列内容和多列内容互相转换,你还在复制粘贴吗?一个等号就够了

    我们制作的表格一列内容很多行时,浏览时,上下拖动鼠标翻来翻去很麻烦,打印出来时又很浪费纸张,可以转换成多列.今天阿钟老师分享用等号来实现一列变多列.多列变一列的转换. 01.一列变多列 上图表格中A列 ...

  • 多列合并为一列并剔除重复值

    原始数据部分截图: 图 1 方法一:数据透视表 操作步骤: Step1:在A列前面插入一空白列,按快捷键[Alt+D+P],进入数据透视表向导,如图2. 图 2 Step2:根据向导选择"创 ...

  • Excel2016多列数据合并成一列方法

    Excel2016中有多列数据,现在我希望将其合并为一列该如何实现呢?其实前面小汪老师也有讲过一些方法.今天,再来为大家分享一种不错的方法,就是利用Word来帮你把Excel中多列数据合并为一列数据. ...

  • EXCEL多列数据合并成一列,别再复制粘贴啦!(下)

    行云里讲堂(ID:xingyunli2022) 践行终身学习,专注个人提升. 整理编辑:枏北 PHONETIC函数是一个连接文本的函数.此函数作用是提取文本字符串中的拼音.汉字.符号等字符. 其语法为 ...

  • EXCEL多列数据合并成一列,别再复制粘贴啦!(上)

    行云里讲堂(ID:xingyunli2022) 践行终身学习,专注个人提升. 整理编辑:枏北 CONCATENATE函数作用是将多个文本字符串,连接成一个文本字符串. 其语法为:CONCATENATE ...