繁体   English   中英

将十进制数字粘贴到Excel /逗号和点十进制分隔符中

[英]Pasting decimal numbers in excel / comma and point decimal separator

我想使用DDE将数据导入excel。 我每秒从DDE中获取一个新值,并使用宏将每个值存储在下一行中。 所以太好了。

问题是小数点分隔符。

我从DDE获得了-5.18834之类的值。使用宏或将其粘贴到excel中,该值显示为-518.557,但实际值为-518557。 小数点被excel错误解释。 当我在记事本中粘贴相同的值时,我得到了正确的值,即-5.18557,我尝试在excel中将值指定为10000,但是有些值是5个数字而不是6,所以又是错误的。

我尝试格式化单元格,更改excel选项中的小数点分隔符,更改了PC上的区域设置,但这些都不起作用。 我也尝试添加TextFileDecimalSeparator =“。 在宏(可在此网站上找到)中,但这也不起作用。 宏完成后,无法处理数据。

谢谢你的帮助。

列举您已经尝试过的方法,似乎可以排除这种情况,但是如果以下方法不起作用,我将非常困惑:

Application.DecimalSeparator = "."
Application.ThousandsSeparator = ","
Application.UseSystemSeparators = False

' here do your paste

Application.UseSystemSeparators = True

我有一个类似的问题-我将宏与单元格一起传递给小数的数字由excel假定为文本...所以我尝试了与您完全相同的过程...没有帮助...我什至尝试了解决方案上面提到的...也没有帮助。 不过,这是一个很好的解决方案。 不幸的是,在我的情况下它没有用,宏只是忽略了这一点,而是使用了其他分隔符。 我尝试了很多事情,我感到绝望,然后我想到了这个笨拙的解决方案:

  Cells.Replace What:=",", Replacement:=".", LookAt:=xlPart, SearchOrder _
    :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

宏忽略了小数点分隔符的设置,因此我决定将给定的分隔符替换为右一个。 有用! 就像我说的那样,这是一个笨拙的解决方案,但只要它能起作用...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM