1

У меня есть рабочая книга, которая распространяется среди пользователей, находящихся в разных странах мира. В этой книге у меня есть выпадающий список, где пользователь может выбрать страну и валюту, например, Япония (USD), Япония (JPY), Китай (USD) и так далее. На основании этого ввода макрос форматирует некоторые диапазоны с символом валюты, указанным в раскрывающемся списке, например, $ для долларов США и ¥ для JPY. Код, который я использую:

 With Worksheets("MYSHEET").Range("ABC1to5_CURRENCY")
 .NumberFormat = "$ #,##0;[Red]$#,##0"
 End With

Теперь проблема в том, что этот код изменяется при запуске на компьютере с другими настройками языка. Например, он показывает ¥ вместо $ на японской версии ОС Windows. Также код ALT+0165 не дает такой же результат символа YEN в японской версии. Может кто-нибудь сказать мне, как жестко закодировать эти символы валюты, чтобы они отображались одинаково на всех компьютерах?

Спасибо!

1 ответ1

0

Попробуйте, если вам поможет следующее: В пустой или тестовой книге поместите 42 в ячейку и отформатируйте ее как Валюта $ (США). Откройте диалоговое окно "Форматировать ячейку" и установите для него значение "Определено пользователем". Оно должно выглядеть примерно так:

_-[$$-409]* #.##0,00_ ;_-[$$-409]* -#.##0,00 ;_-[$$-409]* "-"??_ ;_-@_ 

Может быть, вы можете добраться до.NumberFormat вам нужен таким образом ... мне кажется, что он определяет локали с "409" в этой строке.

удачи! ;-)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .