Función Format

Estoy hecho un lio y no termino encontrar la solución al siguiente problema.
Utilizo Format(txtNumero,"######.##") para reformatear los numeros introducidos en los TextBox. Bien resulta que lo hace bien o mal dependiendo de la configuración del Panel de Control. Esto quiere decir que si los clientes se lo instalan solo a unos le funcionará y a otros no.
Cuando intento operar con Val(txtNumero) no me reconoce la "," como separador decimal y si así estaba configurado en el panel de control tengo un fallo y recorta todo lo que hay a la derecha de la coma.
¿Como podría para introducir números en TextBox. Operar con los sus valores numéricos en el formulario, guardarlos en la mdb y recuperarlos siempre con el mismo formato "." o "," según decida y que cada instalación no sea un mundo diferente como parece ser?.
Un saludo y agradecería ayuda. José Luis Yepes.
2

2 respuestas

Respuesta
1
Este problema lo tenemos todos compadre, la solución es un poco penca, pero efectiva.
A la hora de manejar el dato usa la función replace... más o menos así:
numero = replace(numero,",",".")
Respuesta
1
Yo te puedo pasar un código que tengo para que tanto si escribe los decimales con coma o con punto los trate de igual manera
------ Inicio código ----------
Private Sub Command1_Click()
Dim nPos As Integer ' Posicion del separdor decimal en la cadena
Dim cSep As String ' cadena con separador punto
Dim nValor As Variant
cSep = Text1.Text ' en Text1 va el numero introducido
nPos = InStr(1, cSep, ",")
If nPos Then
Mid(cSep, nPos, 1) = "."
End If
' ya tenemos en cSep la cadena con punto
nValor = Val(cSep)
' y el nValor el numero
MsgBox nValor, vbOKOnly, "Resultado"
End Sub
------ Fin código ------

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas