es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Por qué podemos verificar la configuración regional de un usuario dividiendo dos números en VBA?

Estoy trabajando en una hoja de cálculo e intentando entender parte del código. Al parecer, el siguiente código debe devolver verdadero si la configuración regional del usuario acepta “EN CDN”. ¿Alguien puede darme una idea de cómo funciona esto o por qué funciona de esta manera? No entiendo por qué el cálculo temporal podría causar un error y cómo se relaciona con la configuración regional.

Función IsRegSettingsEn() Como Boolean
En Error Ir A Err_Function

Dim temp
temp = CLng("2.0") / 2

IsRegSettingsEn = Verdadero

Salida de Función 

Err_Function:
IsRegSettingsEn = Falso
Fin de Función

Tags:  , ,

Answer

  1. Avatar for davy.ai

    El código intenta determinar si las configuraciones regionales del usuario aceptan “EN CDN” al intentar dividir una cadena (“2.0”) por 2. Esto se hace para generar un error en tiempo de ejecución si las configuraciones regionales del usuario no están configuradas para usar un punto (.) como separador decimal.

    Si las configuraciones del usuario usan una coma (,) en su lugar, el cálculo fallará y el error será capturado por la declaración “On Error GoTo”, que establece la función para devolver False.

    Si el cálculo tiene éxito, significa que las configuraciones regionales del usuario están configuradas para usar un punto (.) como separador decimal, y la función devuelve True.

    En general, esta no es una forma muy confiable ni robusta de determinar las configuraciones regionales del usuario, y existen métodos más apropiados para lograr esto.

Comments are closed.