Principales respuestas
Por que me da este error?

Pregunta
-
Buenas me da este error y no consigo corregirlo
Private Sub NumericUpDown3_ValueChanged(sender As Object, e As EventArgs) Handles NumericUpDown3.ValueChanged NumericUpDown5.Value = NumericUpDown3.Value Call Macerado_Hervido() End Sub Private Sub NumericUpDown5_ValueChanged(sender As Object, e As EventArgs) Handles NumericUpDown5.ValueChanged NumericUpDown3.Value = NumericUpDown5.Value Call Macerado_Hervido() End Sub Sub Macerado_Hervido() 'FORMULAS MACERADO SIMPLE Try Dim Peso As Decimal = TextBox36.Text 'Peso total malta de la receta Dim Lxkm As Decimal = NumericUpDown2.Value 'Litros por kilo de maltas TextBox39.Text = Math.Round(NumericUpDown3.Value + 0.4 * (NumericUpDown3.Value - NumericUpDown1.Value) / NumericUpDown2.Value + 1.7, 2) TextBox38.Text = Peso * (0.67 + Lxkm) Catch ex As Exception 'Error trapping MsgBox(ex.ToString()) End Try 'FORMULAS MACERADO SIMPLE 'FORMULAS BIAB SIN LAVADO 'FORMULAS BIAB SIN LAVADO End Sub
Dim Peso As Decimal = TextBox36.Text 'Peso total malta de la receta Dim Lxkm As Decimal = NumericUpDown2.Value 'Litros por kilo de maltas TextBox38.Text = Peso * (0.67 + Lxkm)
Desde que he añadido esto de arriba
Gracias
Respuestas
-
El mensaje te indica que no ha sido posible realizar la conversión automática de tipos (implícita) porque el valor de alguno de los dos objetos que muestras no es válido.
¿Has colocado un punto de interrupción para revisar el valor que contiene el objeto donde te salta la excepción? ¿Es posible que el problema se deba por el símbolo de separación decimal o de unidades?
Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.- Marcado como respuesta JETET jueves, 15 de septiembre de 2016 19:09
-
El error te lo da porque estás tratando de convertir una cadena vacía a decimal.
Utiliza TryParse para controlar estos casos:Dim Peso As Decimal
Decimal.TryParse(TextBox36.Text, Peso)
Dim Lxkm As Decimal
Decimal.TryParse(NumericUpDown2.Value, Lxkm)
De esta forma convertirás el valor en decimal si es posible y si no lo es se asignará el valor cero.
Saludos, Javier J
- Propuesto como respuesta Joel C. Naupa Crispín jueves, 15 de septiembre de 2016 16:27
- Marcado como respuesta JETET jueves, 15 de septiembre de 2016 19:09
Todas las respuestas
-
El mensaje te indica que no ha sido posible realizar la conversión automática de tipos (implícita) porque el valor de alguno de los dos objetos que muestras no es válido.
¿Has colocado un punto de interrupción para revisar el valor que contiene el objeto donde te salta la excepción? ¿Es posible que el problema se deba por el símbolo de separación decimal o de unidades?
Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.- Marcado como respuesta JETET jueves, 15 de septiembre de 2016 19:09
-
El error te lo da porque estás tratando de convertir una cadena vacía a decimal.
Utiliza TryParse para controlar estos casos:Dim Peso As Decimal
Decimal.TryParse(TextBox36.Text, Peso)
Dim Lxkm As Decimal
Decimal.TryParse(NumericUpDown2.Value, Lxkm)
De esta forma convertirás el valor en decimal si es posible y si no lo es se asignará el valor cero.
Saludos, Javier J
- Propuesto como respuesta Joel C. Naupa Crispín jueves, 15 de septiembre de 2016 16:27
- Marcado como respuesta JETET jueves, 15 de septiembre de 2016 19:09
-