如何将多语言 excel-vba 宏的逗号或点检测为十进制

How to detect COMA or DOT as decimal for multilanguage excel-vba macros

我用 vba 制作了一个 excel,无论逗号和点的本地设置如何,它都应该可以工作,现在,我已经手动检测并根据用户加载一个或另一个宏。

如何在 vba 上检测到此设置?

阅读后 post 我想你可以使用:

Application.International(xlDecimalSeparator) 将 return 用作十进制分隔符的字符。

Application.International(xlThousandsSeparator) 将 return 用作千位分隔符的字符。

我的测试:

Sub test()

'Spanish Excel with spanish setup
'My decimal separator is comma
'Thousands separators is dot

Debug.Print "Decimal: " & Application.International(xlDecimalSeparator)
Debug.Print "Thousands: " & Application.International(xlThousandsSeparator)
End Sub

我得到的输出: