我有一本分发给世界不同国家/地区用户的工作簿。在此工作簿中,我有一个下拉菜单,用户可以在其中选择国家/地区和货币,例如日本 (USD)、日本 (JPY)、中国 (USD) 等。根据此输入,宏会使用下拉菜单中指定的货币符号格式化某些范围,例如 $ 表示美元,¥ 表示日元。我使用的代码是:
With Worksheets("MYSHEET").Range("ABC1to5_CURRENCY")
.NumberFormat = "$ #,##0;[Red]$#,##0"
End With
现在的问题是,在具有不同语言设置的计算机上运行时,此代码会发生变化。例如,在日语版 Windows 操作系统上,它会显示 ¥ 而不是 $。此外,代码 ALT+0165 在日语版本中不会产生与 YEN 符号相同的结果。有人能告诉我如何硬编码这些货币符号在所有计算机上显示相同吗?
谢谢!
答案1
尝试以下方法是否对您有帮助:在空白或测试工作簿中,将 42 放入单元格并将其格式化为货币 $(美国)。打开“设置单元格格式”对话框并将其切换为“用户定义”。它应该显示以下内容:
_-[$$-409]* #.##0,00_ ;_-[$$-409]* -#.##0,00 ;_-[$$-409]* "-"??_ ;_-@_
也许您可以通过这种方式获得所需的 .NumberFormat...在我看来,它在该字符串中用“409”定义了语言环境。
祝你好运! ;-)