从字符串Excel中提取数字|从字符串中提取数字的3种方法
从Excel中的字符串中提取数字
将单个单元格值拆分为多个单元格,将多个单元格值整理为一个是数据操作的一部分。借助excel中的“左,中和右”文本功能,我们可以提取部分选定的文本值或字符串值。为了使公式具有动态性,我们可以使用其他支持功能,例如“查找和LEN”。但是,仅提取具有字母数字值组合的数字需要高级的公式知识。在本文中,我们将向您展示在excel中从字符串中提取数字的3种方法。
下面我们解释了在excel中从字符串中提取数字的不同方法。阅读整篇文章以了解此技术。
#1 –如何从字符串末尾的字符串中提取数字?
当我们得到数据时,它遵循某种模式,并且所有数字都位于字符串的末尾是模式之一。
您可以在此处从字符串Excel模板下载此提取编号–从字符串Excel模板提取编号
例如,下面带有其PIN码的城市就是该城市的示例。
在上面的示例中,我们一起输入了城市名称和邮政编码。在这种情况下,我们知道我们必须从字符串的右侧提取Zip代码。但是问题之一是我们不知道从字符串的右侧确切需要多少个数字。
下划线(_)字符是数字值开始之前的常见事情之一。首先,我们需要确定下划线字符的位置。这可以通过使用FIND方法来完成。因此,请在excel中应用FIND函数。
我们需要找到的文本是 查找文字 争论?在此示例中,我们需要找到下划线的位置,因此请在双引号中输入下划线。
在文字内 我们需要在其中找到提到的文本,因此选择单元格引用。
最后一个参数不是必需的,因此请保留到现在。
因此,每个单元格都有下划线字符的位置。现在,我们需要完全确定整个文本中有多少个字符。在excel中应用LEN函数以获取文本值的总长度。
现在我们有了字符总数和下划线在数字值之前的位置。要提供RIGHT函数所需的字符数,我们需要减去带下划线位置的字符总数。
现在在单元格E2中应用RIGHT函数。
因此,像这样,当数字以字符串值开头时,如果我们有一个公共字母,我们可以从右侧获得数字。我们可以不用在单个单元格中应用公式,而不必拥有那么多的帮助器列。
= RIGHT(A2,LEN(A2)-FIND(“ _”,A2))这将消除所有支撑柱,并大大减少时间。
#2 –从右侧提取数字,但没有特殊字符
假设我们有相同的数据,但是这次我们在数值之前没有任何特殊字符。
在前面的示例中,我们发现了一个特殊的角色位置,但是在这里我们没有那么奢侈。因此,下面的公式将找到数字位置。
请勿通过查看公式关闭计算机,我将为您解码。
对于excel中的SEARCH函数,我们提供了所有可能的数字起始编号,因此公式将查找数值的位置。由于我们已经为数组提供了所有可能的数字,因此生成的数组也应包含相同的数字。然后excel中的MIN函数返回两个中最小的数字,因此公式如下。
= MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A2&” 0123456789”))现在我们有了一个数字位置,现在我们找到单元格中的字符总数。
这将返回提供的单元格值中的字符总数。现在,LEN –数值的位置将从右侧返回所需的字符数,因此应用公式来获取字符数。
现在在excel中应用RIGHT函数,仅从字符串中获取数字部分。
为了避免使用多个辅助列,请将公式合并到一个单元格中。
= RIGHT(A2,LEN(A2)-MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A2&“ 0123456789”))+ 1)#3 –从Excel中的任何位置提取数字
我们已经从右侧提取中看到了,但是并非所有情况都如此,因此现在我们将看到如何从excel中的字符串的任何位置提取数字。
为此,我们需要使用excel的各种功能。下面是从字符串的任何位置提取数字的公式。
= IF(SUM(LEN(A2)-LEN(SUBSTITUTE(A2,{“ 0”,“ 1”,“ 2”,“ 3”,“ 4”,“ 5”,“ 6”,“ 7”,“ 8“,” 9“},”“))))> 0,SUMPRODUCT(MID(0&A2,LARGE(INDEX(ISNUMBER(–MID(A2,ROW(INDIRECT(” $ 1:$“&LEN(A2)))),1 ))* ROW(INDIRECT(“ $ 1:$”&LEN(A2))),0),ROW(INDIRECT(“ $ 1:$”&LEN(A2))))+ 1,1)* 10 ^ ROW(INDIRECT( “ $ 1:$”&LEN(A2)))/ 10),””)