Exibindo símbolos de moeda que são independentes das configurações regionais de um computador

1

Eu tenho uma pasta de trabalho que é distribuída para usuários localizados em diferentes países do mundo. Nesta pasta de trabalho, tenho uma lista suspensa em que o usuário pode selecionar o país e a moeda, por exemplo, Japão (USD), Japão (JPY), China (USD) e assim por diante. Com base nessa entrada, uma macro formata alguns intervalos com o símbolo de moeda especificado na lista suspensa, por exemplo, $ para USD e ¥ para JPY. O código que estou usando é:

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

Agora, o problema é que esse código é alterado quando executado em um computador com configurações de idioma diferentes. Por exemplo, mostra ¥ em vez de $ na versão japonesa do sistema operacional Windows. Além disso, o código ALT + 0165 não produz o mesmo resultado do símbolo YEN na versão japonesa. Alguém pode me dizer como codificar esses símbolos de moeda para que eles exibam o mesmo em todos os computadores?

Obrigado!

    
por Muneeb M 13.06.2013 / 09:31

1 resposta

0

Tente se o seguinte ajudar você: Em uma pasta de trabalho vazia ou de teste, coloque 42 em uma célula e formate-a como Moeda $ (Estados Unidos). Abra o diálogo "Format Cell" e mude para "User defined" Deveria dizer algo assim:

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

Talvez você possa acessar o .NumberFormat que você precisa desse jeito ... parece que ele define locales com o "409" nessa string.

boa sorte! ; -)

    
por 13.06.2013 / 09:41