Excel打印号码正确的小数点分隔符

我使用打印function将单元格值导出到csv文件。 我在具有不同本地化设置的多台PC上使用此macros。 我遇到的问题是,在某些PC上,输出是4,11和4.11。 有没有任何格式的方法,让我总是写一个分号作为十进制分隔符?

据我所知,没有格式的方法来更改小数点分隔符。 相反,您的选项暂时告诉Excel使用特殊字符或使用replace()。

Application.UseSystemSeparators = False Application.DecimalSeparator = ";" Print #1, rngValue.Text 

要么

 Print #1, Replace(rngValue, ",", ";") 

在这两种情况下,你都会遇到一个问题,在读回数字时,把它们转换回正确的字符,这样他们就被认为是数字。

一个更好的问题可能是程序员如何在使用逗号作为小数点分隔符处理CSV文件中的十进制值的地方?