Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从字符串excel中提取数字_Excel - Fatal编程技术网

从字符串excel中提取数字

从字符串excel中提取数字,excel,Excel,我在Excel中有一个字符串,其格式如下: Total Work15 / 10015.00%G Total Work364 / 1000364.00%Y Total Work13 / 4552.86%B 这是一种奇怪的格式,但它是由一个我无法控制的系统生成的 我感兴趣的是在“工作”一词后提取数字15。目前我使用的是: =MID(A2,11,FIND(" ",A2,11)-11) 返回“15”,但结尾似乎有一个空格,所以我不能把这个数字作为int 有人能帮我吗,这样我就只得到int而不是尾随空

我在Excel中有一个字符串,其格式如下:

Total Work15 / 10015.00%G
Total Work364 / 1000364.00%Y
Total Work13 / 4552.86%B
这是一种奇怪的格式,但它是由一个我无法控制的系统生成的

我感兴趣的是在“工作”一词后提取数字15。目前我使用的是:

=MID(A2,11,FIND(" ",A2,11)-11)
返回“15”,但结尾似乎有一个空格,所以我不能把这个数字作为int


有人能帮我吗,这样我就只得到int而不是尾随空格了?

在这种情况下,尾随空格导致它的行为不像一个数字——它是从字符串中提取出来的——这意味着Excel会自动猜测它是一个字符串值

要在这个公式中修复它,您可以执行以下操作:

=VALUE(MID(A2,11,FIND(" ",A2,11)-11))

但是,一般来说,您可能会发现使用vba正则表达式函数从字符串中提取数字会更好。注意,我感兴趣的数字可能超过2位数,但点在“k”和第二个“”之间。您能显示更多要提取的行吗?所以我们可以更好地理解这个模式?结尾没有空格,但它是一个文本。在末尾添加
*1
以转换为int。将mid函数的长度更改为-12,而不是-11。然后使用value函数转换为value。检查
=code(MID(A2,13,1))
与第一个字符串返回的内容。我已经测试了代码和该字符串,奇怪的是,它对我来说绝对有效。你想用绳子做什么?我在文本中添加/乘以它,它的工作方式与expectedit必须与数据源有关,如果我不使用源数据重新创建它,您的答案对我有效。非常奇怪。您可以尝试-=VALUE(MID(CLEAN(TRIM(A2)),11,FIND(“,A2,11)-11),这通常有助于解决不寻常的格式错误。没有问题,可能有点像尾随空格,也可能是一个有趣的编码问题。Trim删除双空格,Clean删除不可打印的内容。这两个非常有用的函数都值得记住,看起来是干净的。下次一定要注意。谢谢