Cita:
y me da el error que no puede convertir
|
Código Delphi
[-]ShowMessage('No puedo convertir ' + StringGrid1.Cells[renglones,columnas]);
totmes[columnas] := 0;
Si el error es
exactamente "No puedo convertir " Quiere decir que la celda en ese renglón y esa columna está vacío.
Si el error es algo así como "No puedo convertir 123.456.678"; Quiere decir que la celda en ese renglón y esa columna tiene el valor "123.456.678" que no es un valor válido. (Tiene 2 puntos)
Por lo que comentas, creo que es el primer error y por lo tanto se puede tomar como un 0 y es lo que hace el trozo de código si hay una excepción.
Cita:
la cuarta vez que me sale ese error me sale el error ya comentado
|
Eso es porque ya ha terminado el primer bucle donde has puesto el control de errores (bloque try..except).
En el segundo bucle trata de convertir nuevamente los valores y vuelve a fallar.
Si nos dices
EXACTAMENTE qué valores tiene las celdas (con sus puntos, comas y signos) te podrémos decir qué es lo que fallará.
Ten en cuenta que para convertir un número con la función StrToFloat el string que le pasas:
- solo debe tener números
- solo puede haber
un punto que separe la parte entera de la decimal.
- si fuera negativo podría empezar con el signo "-"
- no debe contener espacios.