PDA

Ver la Versión Completa : Variable que acepte los separadores de miles


ciscu
07-04-2004, 20:42:23
Hola a todos!!!
Me podeis decir como guardar un numero del estilo 4.555,22 dentro de una variable que no sea string? o si no, como hacer que no salga el error '4.555,22 is not a valid floating value' ?

Es un poco urgente (pero no es vida o muerte jejeej); si podeis ayudarme os lo agradecere muchisimo

Gracias anticipadas

__cadetill
07-04-2004, 20:51:23
while Pos('.', MiString) <> 0 do
Delete(MiString, Pos('.', MiString), 1);
MiFloat := StrToFloat(MiString);


Espero te sirva

ciscu
08-04-2004, 09:40:45
Hola gracias por responderme!!!

Lo siento, pero olvidé mencionar que el float tiene que tener además 2 decimales SIEMPRE, es decir, aunque sea 23,00, ya que representa moneda, y para que sucediera esto yo hacía lo siguiente:

MiFloat:=StrToCurr(FloatToStrF(MiFloat,ffNumber,10,2))

Es decir, convertir el float MiFloat con x decimales a 2 porque representa moneda, pero ahora me ha surgido el problema de los puntos de millar, ya que me dice el anterior mensaje de error ('X.XXX,XX is not a valid floating value'), por eso lo de quitar el dichoso punto...

Me podéis seguir ayudando?

Gracias.

__cadetill
08-04-2004, 11:36:55
Algo así?

while Pos('.', MiString) <> 0 do
Delete(MiString, Pos('.', MiString), 1);
MiFloat := StrToFloat(MiString);
MiString := FormatFloat('0.00', MiFloat);