点击蓝字【秋叶 Excel】

发送【礼包】

免费领办公神器、Office 模板和免商字体!

本文作者:拉登 Dony

本文来源:拉小登(ID:ladengchupin)

本文编辑:竺兰

我是拉小登,一个爱梳头的 Excel 老师。

今天来讨论一个函数公式的问题。

多列姓名怎么提取姓名唯一值?

往常写文章,开头我都会长篇大论导入场景,今天直接开门见山,用 QA 笔记法简单明了的,讲解这个问题背后的函数思维。

问题描述

多列姓名怎么提取姓名唯一值?

提问人:拉小登 Dony

回答人:拉小登老师

解决函数问题就 3 个步骤:

❶ 梳理思路

❷ 编写公式

❸ 公式说明

梳理思路

先别着急写公式,先梳理这个问题的解决思路,我想到了下面几个步骤:

去重方法

Excel 中常用的删除重复的方法有:

❶ 删除重复值。【放弃】这个是手动操作,不能自动更新。

❷ UNIQUE 函数。【可行】用公式一键提取唯一值。

但是 UNIQUE 函数,只能对单列内容处理。

所以在这一步之前,需要先想办法,把多列姓名,合并成一列。

多列合并成一列

目前我掌握的方法有下面几个:

❶ 使用文本连接符&。【放弃】

因为需要一个一个引用单元格,效率太低。

❷ TEXTJOIN 合并文本,然后拆分。【可行】

就是把所有单元格的内容,合并成一个字符串,然后拆分成列表的形式。

❸ TOCOL 多列合并。【可行】

这是一个 Office365 的函数,更加简单实用。

综上所述,可以用实用两种方法,实现这个效果。

接下来挨个验证一下。

编写公式,方法 1

编写公式

公式如下:

=UNIQUE(FILTERXML(""&TEXTJOIN("",1,A2:D8)&"","a/b"))

公式说明:

首先是TEXTJOIN函数的使用说明。

下面是FilterXML的使用说明。

最后是UNIQUE函数的使用说明。

再来看原始的公式:

=UNIQUE(FILTERXML(""&TEXTJOIN("",1,A2:D8)&"","a/b"))

❶ 首先是合并文本

使用 TEXTJOIN 函数用把单元格的内容合并成一个字符串

使用这个奇怪的分隔符,目的是为了构建 xml 数据文本。

TEXTJOIN("",1,A2:D8)

在合并后的文本两端,把标签补全,得到规范的 xml 文本。

""&TEXTJOIN("",1,A2:D8)&""

❷ 拆分文本

然后使用 FilterXML 来提取 a/b 路径下的文本,实现文本拆分。

FILTERXML(""&TEXTJOIN("",1,A2:D8)&"","a/b")

提取的结果如下,实现的多列数据的合并。

❸ 提取唯一值

最后,数据合并成一列后,再用 UNIQUE 函数提取唯一值。

=UNIQUE(FILTERXML(""&TEXTJOIN("",1,A2:D8)&"","a/b"))

最终实现了多列唯一值提取的目标。

编写公式,方法 2

编写公式

filterxml 是一个比较古老的函数,没有 xml 基础的话,看的一头雾水。

目的其实就是用 TEXTJOIN+FILTERXML 实现多列数据的合并。Office365 提供了一个 TOCOL 函数,可以轻松实现相同的效果。

还是一样的思路,公式如下:

=UNIQUE(TOCOL(A2:D8,1))

公式说明:

TOCOL函数使用说明如下:

再来看原始的公式:

=UNIQUE(TOCOL(A2:D8,1))

❶ 多列数据合并

使用 TOCOL 函数,把 A2:D8 区域的多列数据合并起来,合并的时候忽略空白单元格。

=TOCOL(A2:D8,1)

合并结果如下:

❷ 提取唯一值

数据合并成一列后,用 UNIQUE 函数提取唯一值就可以了。

=UNIQUE(TOCOL(A2:D8,1))

这样就完成了多列去重,简单吧!

总结一下

函数思维

所谓函数思维,其实就是做好问题的拆解,把大问题拆解成小问题,再把小问题翻译成单个的函数,然后组合起来解决问题。

所有的问题解决思路都是这样的,不是吗?

学习函数思维,和学习数学差不多,需要通过大量的练习来积累经验:

❶ 梳理思路。掌握一定多的阶梯方法,梳理思路。

❷ 编写公式。扎实的公式基础,能把思路翻译成函数公式。

❸ 函数说明。理解函数的运行原理,出错后能自己排除错误。

如果你想学习更多的 Excel 知识,Get 函数思维,推荐参加秋叶 Excel 3 天集训营

即使你是零基础小白,也能带你轻松入门,掌握 Excel 秘籍,使数据呈现更清晰直观,让领导更喜欢。

每天学习大概30 分钟,3 天时间,你也有可能成为 Excel 高手!

专业讲师、贴心助教、上进学员,都在等你哦~

秋叶《3 天 Excel 集训营》

报名即送

35 个常用函数说明

赶紧预约吧!

以上内容包含广告