公式中自有诗和远方,这话谁说的,一点没错!
我想要的,都能在EXCEL里表达出来,这话谁说的,一点没错!
当你发现一个单元格里有文字和数字并存的时候,想单独提取里面的文字或者数字时,是不是手工的复制再粘贴出来,或者用计算器一个一个的加减统计,甚是让人头疼,那样又让你返回到了远古时代,做表格,不是画画表格线,筛选一些数据就是效率,就是懂EXCEL,有时候需要配合公式准确自动运算,达到自己想要的结果,才能让你放开双手,轻松的工作,下面我为大家带来一组公式自动提取文字数字的方法!
小袁的团队消费额为200,怎么将上图中小袁的消费数额提取出来!
单元格A3里输入RIGHT(A2,2*LEN(A2)-LENB(A2))
得出200,将公式向右拉自动填充,轻松完成数字提取。
分析:
RIGHT公式的意思是指从一个单元格里最右边提取多少个字符。我们这里提取的是A2单元格里最右边往左三位字符。通俗操作为RIGHT(A2,3) 这样理解。
公式:2*LEN(A2)-LENB(A2)) 分析
len(a2)=5 返回A2单元格里字符串中的字符个数,然后固定乘以2 等于10
Lenb(a2)=7 返回A2单元格里所含的字符数。与双字节字符一起使用。
那么, 2*LEN(A2)-LENB(A2) 的意思就是 2*5-7=3,也就是RIGHT所提取的字符位数,加入RIGHT公式里,自动提取数字出来。当然,只限于文字在左,数字在右的提取,不限长度。是不是感觉不那么费力结果就出来了!
如果是文字在右,数字在左;又该怎么做呢?
来,我们顺着以上思路再来看实际操作
在单元格A4里输入LEFT(A2,LEN(A2)-(LEN(A2)*2-LENB(A2))) 得出“小袁”,将公式向右拉自动填充,再度轻松完成数字提取。
分析:
LEFT公式的意思和RIGHT公式运算相反,是指从一个单元格里最左边往右提取多少个字符。我们这里提取的是A2单元格里左边2位字符。通俗操作为LEFT(A2,2) 这样理解。得出“小袁”。
公式:LEN(A2)-(LEN(A2)*2-LENB(A2))分析
len(a2)=5 –( Len(A2)*2=10 - Lenb(a2)=5)
5 - (10 - 5)
结果等于2
LEN(A2)-(LEN(A2)*2-LENB(A2))算出 5-(5*2-7)=2,也就是LEFT所提取的字符位数,加入LEFT公式里,自动提取数字出来,限于文字在左,数字在右的提取,不限长度。是不是感觉不那么费力结果就出来了!
在一个单元格里求所有消费者的消费总额又该怎么做呢
F3单元格里输入:=SUMPRODUCT(RIGHT(A2:F2,2*LEN(A2:F2)-LENB(A2:F2))*1) 运算所有人的消费总额
分析:
SUMPRODUCT公式的意思是返回相应数组 或 区域乘积的和,在公式中按F9我们可以看到
运算结果为SUMPRODUCT({"200","300","100","100","500","100"}*1)
让数组里的每个数乘以1;任何数乘以1等于任何数
也就是200*1,300*1,100*1,100*1,500*1,100*1
配合SUMPRODUCT公式让每个乘以1的数再相加,结果等于1300
怎么样脑洞大开了没!
附上EXCEL提取所字符所需的函数说明
一、LEFT函数
也应用于:LEFTB
LEFT 基于所指定的字符数返回文本字符串中的第一个或前几个字符。
LEFTB 基于所指定的字节数返回文本字符串中的第一个或前几个字符。此函数用于双字节字符。
语法
LEFT(text,num_chars)
LEFTB(text,num_bytes)
Text 是包含要提取字符的文本字符串。
Num_chars 指定要由 LEFT 所提取的字符数。
• Num_chars 必须大于或等于 0。
• 如果 num_chars 大于文本长度,则 LEFT 返回所有文本。
• 如果省略 num_chars,则假定其为 1。
Num_bytes 按字节指定要由 LEFTB 所提取的字符数。
二、MID函数
也应用于:MIDB
MID 返回文本字符串中从指定位置开始的特定数目的字符,该数目由用户指定。
MIDB 返回文本字符串中从指定位置开始的特定数目的字符,该数目由用户指定。此函数用于双字节字符。
语法
MID(text,start_num,num_chars)
MIDB(text,start_num,num_bytes)
Text 是包含要提取字符的文本字符串。
Start_num 是文本中要提取的第一个字符的位置。文本中第一个字符的 start_num 为 1,以此类推。
Num_chars 指定希望 MID 从文本中返回字符的个数。
Num_bytes 指定希望 MIDB 从文本中返回字符的个数(按字节)。
说明
• 如果 start_num 大于文本长度,则 MID 返回空文本 ("")。
• 如果 start_num 小于文本长度,但 start_num 加上 num_chars 超过了文本的长度,则 MID 只返回至多直到文本末尾的字符。
• 如果 start_num 小于 1,则 MID 返回错误值 #VALUE!。
• 如果 num_chars 是负数,则 MID 返回错误值 #VALUE!。
• 如果 num_bytes 是负数,则 MIDB 返回错误值 #VALUE!。
三、RIGHT函数
也应用于:IGHTB
RIGHT 根据所指定的字符数返回文本字符串中最后一个或多个字符。
RIGHTB 根据所指定的字符数返回文本字符串中最后一个或多个字符。此函数用于双字节字符。
语法
RIGHT(text,num_chars)
RIGHTB(text,num_bytes)
Text 是包含要提取字符的文本字符串。
Num_chars 指定希望 RIGHT 提取的字符数。
Num_bytes 指定希望 RIGHTB 根据字节所提取的字符数。
说明
• Num_chars 必须大于或等于 0。
• 如果 num_chars 大于文本长度,则 RIGHT 返回所有文本。
• 如果忽略 num_chars,则假定其为 1。
四、举例
假设A1单元格的内容为“中华人民共和国”
1.如果要在B1单元格取得A1单元格的前两个字符(汉字的两个字符如果按字节来算则是4个字节,一个汉字为两个字节),即“中华”两字,则B1单元格可以写入公式
=LEFT(A1,2)
或
=LEFTB(A1,4)
2.如果要在C1单元格取得A1单元格的第三个字符起的两个字符(汉字的两个字符如果按字节来算则是4个字节,一个汉字为两个字节),即“人民”两字,则C1单元格可以写入公式
=MID(A1,3,2)
或
=MIDB(A1,5,4)
3.如果要在D1单元格取得A1单元格的最后三个字符(汉字的三个字符如果按字节来算则是6个字节,一个汉字为两个字节),即“共和国”三字,则D1单元格可以写入公式
=RIGHT(A1,3)
或
=RIGHTB(A1,6)
三、FIND函数
用法:FIND(要查找的文本,包含要查找文本的文字区域,文本中开始查找的字符位置)
例:FIND(“D”,A1,1)