Puntos y Comas (configuracion Regional)

Leonardo
11 de Junio del 2006
Necesito ayuda urgente ma帽ana tengo que entregar el programita y me surgi贸 una complicaci贸n por la configuraci贸n Regional de Windows, el tema que yo puse como valores de referencia dentro de textbox a n煤meros con separador decimal al punto (聯.聰), y si esta configurado de otra manera me salta errores.

Los que necesito es que indistintamente el programa me tome los valores del los texbox, teniendo punto(聯.聯) o coma (聯,聰) como separador decimal.



Lo mas pr贸ximo que tengo es esto; trate de amoldarlo a lo m铆o pero me salto u error y hasta ah铆 llegue. se los paso:

Private Function ReemplazarF(X) As String
Dim NX
Dim NF
NF = F
NX = Format(X, "0.#")
NX = Mid(NX, 1, InStr(1, NX, ",") - 1) & "." & Mid(NX, InStr(1, NX, ",") + 1, Len(Mid(NX, 1, InStr(1, NX, ","))))
While InStr(1, NF, "X") > 0
NF = Mid(NF, 1, InStr(1, NF, "X") - 1) & NX & Mid(NF, InStr(1, NF, "X") + 1, Len(NF))
Wend
ReemplazarF = NF
End Function


En esta funci贸n, es importante tener en cuenta algo.
Se han agregado dos variables internas de la funci贸n.
Una es "NF" que representa la funci贸n modificada al reemplazar el valor de X.
La otra es "NX" que representa el valor de X formateado con el punto (".") como separador decimal, de forma tal que si tenemos Windows configurado para que la coma (",") sea nuestro separador decimal, no existan errores, puesto sea cual fuere la configuraci贸n de Windows, internamente en MS Excel (as铆 como en Visual Basic) el punto (".") es el separador de decimales



Bueno Gracias y espero que me salven!! Help mee!!

acemel
11 de Junio del 2006
puedes probrar como posible solucion apoyarte en un String y cambiar el punto por la coma con un simple IF
if numero= " *.* " then
numero = " *,* "
punto=1
else
punto=0
end if
'aqui haces las operaciones
'y finalmente
if punto=1 then
if resultado = " *,* " then resultado = " *.* "
end if
el problema esq te presenta la informacion con una coma, puesto que ya est谩 cambiado, la calculadora de windows tb hace as铆
y si quieres presentar el resultado con un punto, tendrias q apoyarte en una variable
esa es la solucion que se me ocurre a mi, espero q por lo menos pueda ayudarte o inspirarte a solucionar tu problema