none
FORMATEAR DATO NUMERICO CON DECIMALES

    Pregunta

  • Buenas tardes resulta que me pasa algo curioso uso  Format(El_Sub_Total, "0,0") para mostrar en el formulario determinado monto con dos decimales y punto de miles (10.000,00) curiosamente en el datagridview cuando hago la consulta a la base de datos y cargo la información me aparece justo a como lo necesito pero cuando introduzco manualmente la información en la tabla no consigo los decimales (10.000), este datagridview es de una factura y esteticamente no se ve bien unos valores con decimales y otros no, igual me sucede cuando asigno el formato a un label o a un textbox, Label17.Text = Format(El_Total, "0,0") y recibo (10.000) sin los decimales.

    Qué será lo que está mal hecho?

    domingo, 20 de noviembre de 2016 22:07

Respuestas

  • Hola Frank Jarquin,

    Lo que pasa es que el formato es incorrecto, tendría que ser así :

    Dim El_Total As Double = 10000
    Label17.Text = Format(El_Total, "##,##0.00")

    Aunque una mejor alternativa sería usando el formato N2 el cual puedes asignarlo mediante el ToString().

    Label17.Text = El_Total.ToString("N2")
    '10.000,00

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    • Marcado como respuesta Frank Jarquin domingo, 20 de noviembre de 2016 22:54
    domingo, 20 de noviembre de 2016 22:41

Todas las respuestas

  • Hola Frank Jarquin,

    Lo que pasa es que el formato es incorrecto, tendría que ser así :

    Dim El_Total As Double = 10000
    Label17.Text = Format(El_Total, "##,##0.00")

    Aunque una mejor alternativa sería usando el formato N2 el cual puedes asignarlo mediante el ToString().

    Label17.Text = El_Total.ToString("N2")
    '10.000,00

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    • Marcado como respuesta Frank Jarquin domingo, 20 de noviembre de 2016 22:54
    domingo, 20 de noviembre de 2016 22:41
  • Muchas gracias, solucionado.
    domingo, 20 de noviembre de 2016 22:54
  • Me queda una duda: el formato"N2" no se puede aplicar a una operación del tipo label1.text= valor1-valor2? y si se puede como sería.?

    domingo, 20 de noviembre de 2016 22:56
  • Me queda una duda: el formato"N2" no se puede aplicar a una operación del tipo label1.text= valor1-valor2? y si se puede como sería.?

    Hola Frank Jarquin,

    Podrías hacerlo mediante el uso de ( ).

     Label17.Text = (valor1 - valor2).ToString("N2")

    O también podrías usar el String.Format de esta manera :

    Label17.Text = String.Format("{0:N2}", valor1 - valor2)

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    domingo, 20 de noviembre de 2016 23:01
  • Muchísimas gracias nuevamente.
    domingo, 20 de noviembre de 2016 23:02