
由于在工作中,有时会遇到一些来自于erp导出或网上复制的数据,这些数据在进行公式计算时,总是出现错误,无法正确执行运算。
excel表格中进行文本内容的处理时,每个文本函数都有其专门的作用,如上一章节的concat、concatenate和textjoin函数,它们的作用是连接文本;再如之前的replace和substitute函数,它们是用来替换文本中的指定字符串;left、right、find和mid等函数是提取文本内容的指定字符串。
那么在一些特殊场景中,用来清除单元格中的特殊字符和空格,需要使用哪个文本函数呢?
clean与trim函数。
一、clean函数
如下图所示,要将A列的人员信息转换为B列的格式,也就是将换行显示转换为一行来显示。

在专栏介绍replace和substitute函数时,讲到了substitute函数的一个用法,通过将换行符替换掉,而使单元格内容呈一行显示。

CHAR(10)char函数CHAR(10)
那么当一个文本中出现了类似的字符,影响了单元格内容的显示,或者致使一些公式无法引用该单元格来执行计算,该如何处理呢?
=CLEAN(A2)

这个公式只简单地使用了clean函数,也达到了substitute函数转换的效果。
clean函数的含义是什么呢?
我们看下它的语法:

=clean(文本)
ASCII 码表中编码为 0 - 31 的字符,它有时是隐藏未显示的字符,但却是实实在在存在的。
clean函数只有1个参数,但这个参数可以是一个文本,也可以是一个单元格区域,一个数组区域,正是由于它的这个特点,clean函数可以直接用于sum求和函数的嵌套公式中。
列

在这个情境中,便可以用到clean函数,一步求和到位,我们可以输入公式:
=SUM(VALUE(CLEAN(C2:C11)))

这个公式使用了sum、value、clean三个函数,sum求和函数不用再赘述了,excel最最基础的函数之一,value函数则是将文本数字转换为数值,这是因为clean属于文本函数,文本函数运算出来的结果都是文本格式的,因此如果结果是一个数字,那么也需要通过value函数转换成数值之后,才能通过其他函数公式进行计算。
下面我们再详细看看通过clean函数公式运算后的数据有什么不同。
购买专栏解锁剩余42%