Excel:如何将文本转换为数字?

Excel:如何将文本转换为数字?

我将一些包含产品和价格的表格从网页复制到了 Excel(2013)工作表。

源表和我自己的 Excel 都配置了法国数字设置:格式为一千欧元二十美分1 000,20 €

问题:我无法让价格列(包含从3 000,00到的值5 000,00,没有货币单位)被 Excel 识别为数字。

我尝试了这里提到的所有解决方案(1),但均未成功: 如何在 Excel 中将文本转换为数字...

Number(1)除非编写 VBA 脚本并重新输入值。基于“单击错误消息”的解决方案不适用,因为即使在单元格上设置类型后也没有错误消息。

这里有解决办法吗?

答案1

我最终偶然找到了一个有效的解决方案:将 HTML 粘贴到文本编辑器中,然后将原始文本复制粘贴到 Excel 中——>所有数字都被自动识别。

使用 ExcelPaste Special函数并将 HTML 粘贴为文本也有效。

答案2

我一直使用 pastespecial>multiply 并粘贴 1 对我来说工作正常。

也许它无法正确识别“,” 。在列中搜索替换逗号和空格,看看是否有帮助。如果没有帮助,请再次尝试乘以 1。

答案3

您可以(并且可以在 2015 年)使用该功能NUMBERVALUE

它需要三个参数:

  1. 要转换的数据所在的单元格/范围/等等。
  2. 用于小数分隔的分隔符。
  3. 用于对整数部分进行分组的分隔符。

1 和 2 没问题。对于分组分隔符,当然,您可以了解“空格”字符是什么,但实际上,您只需编辑数据单元格并将字符复制到剪贴板即可。然后将其粘贴到公式中。没有混乱,没有麻烦。

一个警告:它只会对 2 和 3 使用一个字符。因此,如果该空格超过一个字符,则必须纠正它。Find and Replace将复制的空格替换为一些简单字符(该字符不是所显示的十进制字符),然后在函数中使用该字符。

设置公式对数据范围执行此操作后,将列复制到剪贴板并将数据粘贴到源数据的顶部。

您可以添加一个“辅助”列来执行此操作,然后在粘贴源数据后删除该列,或者只插入一张工作表并在那里执行工作,然后删除它或保留以备将来使用。

关键在于,这NUMBERVALUE是解决问题的简单方法,而且不依赖于用户的知识水平或工作意愿。例如,如果添加永久表格来进行转换,您的后续公式可以引用 IT 而不是实际数据。

此外,与直接进行转换的宏相比,编写一个宏非常容易,只需在这样的表单中查找要复制的内容,然后将值粘贴到另一个现有位置即可。这样,您只需放置一个按钮,让用户在导入数据后按下该按钮即可触发宏。如果您是唯一的用户,您可能会喜欢这个。

相关内容