![小数分隔符](https://linux22.com/image/1603074/%E5%B0%8F%E6%95%B0%E5%88%86%E9%9A%94%E7%AC%A6.png)
我可以在某些 Excel 文件中使用逗号,在其他 Excel 文件中使用句号作为小数分隔符吗?我的一些文件仅用于欧洲文件。而其他文件则严格用于美国。
感谢 PRDIGM
答案1
小数点与小数逗号的使用由计算机的区域设置决定。通常您不需要更改它,因为 Excel 会为您完成这项工作。此外,Excel 还会更改公式使用的语言,以反映随 Office 安装的语言集。
如果欧洲国家(例如德国)的某个人编写了 Vlookup 函数,则它看起来像
=SVerweis(foo;bar;baz;false)
函数名称不是 VLookup,参数以分号分隔,而不是逗号。带千位分隔符的十进制数将如下所示12.345,66
当在具有美国设置(使用小数点)的计算机上打开同一个 Excel 文件时,公式将如下所示:
=VLookup(foo,bar,baz,false)
公式将以当前计算机上 Office 安装的语言显示。数字将类似于“12,345.66”,同样使用当前计算机的区域设置。
您可以在 Excel 中覆盖计算机的区域设置,并手动(或使用 VBA 宏)设置小数、千位和列表分隔符,但为什么要这样做呢?这只会增加混乱并引发问题。
由于 Excel 在一台机器上使用一致的符号并自动翻译符号,因此无需手动更改设置即可使 Excel 正常工作。
我能想到的唯一原因是当您想要将公式复制/粘贴到用户指南中或截取屏幕截图时。如果您的计算机使用美国设置,而您正在为使用欧洲设置的人编写文档,那么您可能需要在截取屏幕截图之前更改设置,并且您可能需要安装语言包以启用在 Excel 函数使用的语言之间切换。
答案2
如果您在工作表中使用以下宏,则可以:
Private Sub Workbook_Activate()
Application.DecimalSeparator = ","
Application.ThousandsSeparator = "."
Application.UseSystemSeparators = False
End Sub
Private Sub Workbook_Deactivate()
Application.UseSystemSeparators = True
End Sub
没有其他办法,但根据您或接收公司的 Windows 政策,这可能会敲响各种警钟。您还需要关闭工作簿以将更改恢复为欧盟或美国,无论您如何配置它。