Visual Basic para Aplicaciones - Detectar idioma

Life is soft - evento anual de software empresarial
 
Vista:

Detectar idioma

Publicado por Pablo (77 intervenciones) el 19/06/2019 00:00:15
Necesito detectar el idioma del usuario que ejecuta una hoja excel con macros que cree hace años.

Ahora tengo usuarios que tienen Excel en español y otros que lo tenemos en inglés británico.

Cambian los formatos de fecha y me da algunos errores.

Para detectar el idioma uso:

1
Application.LanguageSettings.LanguageID(msoLanguageIDUI)

que me da el código del idioma, pero he estado buscando un listado de LanguageID actualizado y no encuentro ninguno.

En algún foro que hace referencia al respecto, la página ya no existe.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.134
Oro
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Detectar idioma

Publicado por Antoni Masana (498 intervenciones) el 20/06/2019 12:35:34
He encontrado esto:

Aquí les paso un código que revisa si estamos en inglés o español, y si no es ninguno de los dos, muestra un mensaje de aviso.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Sub Idioma
    Dim v_Idioma As String
    Select Case Application.LanguageSettings.LanguageID(msoLanguageIDUI)
 
        ' ---&--- Revisa si está en inglés
        Case 1033, 3081, 10249, 4105, 9225, 14345, 6153, 8201, 5129, 13321, 7177, 11273, 2057, 1033, 12297
           v_Idioma = «Inglés»
 
        ' ---&--- Revisa si está en español
        Case 1034, 2058, 3082, 11274, 16394, 13322, 9226, 5130, 7178, 12298, 17418, 4106, 18442, 19466, 6154, 15370, 10250, 20490, 14346, 8202
            v_Idioma = «Español»
 
        Case Else
           MsgBox «Lenguaje no reconocido como inglés ni español. Puede que la macro no despliegue el año correctamente.»
           v_Idioma = «Sabrá Dios cuál es el » & Application.LanguageSettings.LanguageID(msoLanguageIDUI)
    End Select
End Sub


Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Detectar idioma

Publicado por Pablo (77 intervenciones) el 20/06/2019 13:40:30
Muchas gracias Antoni.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar