Ver Mensaje Individual
  #4 (permalink)  
Antiguo 16/09/2008, 13:30
Avatar de Kruzado
Kruzado
 
Fecha de Ingreso: marzo-2007
Mensajes: 307
Antigüedad: 17 años, 2 meses
Puntos: 17
Respuesta: Suma En Un msflexigrid

a ver si te sirve esto

para visual el separador decimal es el punto entonces si llenaste la grilla con datos y en esos datos iban numeros decimales y el separador decimal es la coma entonces,.....

al hacer val del numero decimal, se olvida de la coma, no la toma, toma como un solo valor o simplemente te trunca el valor ej:

opcion1 val(13,13)=13
opcion2 val(13,13)=1313

cualquiera de las formas te arroja una suma erronea

lo que hago yo es reemplazar las comas por decimales de la sig. manera

total=total+val(REPLACE(grid1.textmatrix(x,3),",", ".")

la funcion replace cambia todas las comas por puntos (si es que los tiene), ojo que eso tambien te va a pasar si muestras los valores con separador de miles ej:

opcion1 1.000=1
opcion2 1.235=1,235

eso tambien lo sacas con replace :

replace(grid1.textmatrix(x,3),".","")

donde los parametros ingresados a replace son (cadena,caracter buscado,caracter de reemplazo)

usa replace espero funcione

saludos