none
Sumar valores de un DataGridView RRS feed

  • Pregunta

  • Buena noche estimados colegas,

    Esta noche, quisiera pedirles ayuda con algo que me tiene loca la cabeza, tengo un proyecto en VisualStudio 2013 conectado a Access y quiera poder sumar los valores totales que este me da. ¿Cómo puedo hacer esto?


    En el TextBox que esta abajo del titulo "TOTAL" deseo que salga la suma de los totales de la base de datos que muestra el DataGridView.

    ¿Cómo puedo realizar esto?

    Muchas gracias por la colaboración

    viernes, 4 de diciembre de 2015 0:53

Respuestas

  • Hola:

     Tienes dos caminos dependiendo como es que cargas los datos al control DataGridView.

     Si es por medio de una lista el camino es mas facil.

     txtTotal.Text= Convert.ToString(myLista.Sum(x => x.Precio))

     Si deseas sumar el valor usando el propio control entonces:

     Después de hacer el bindeo al origen de datos harías:

    dgvMisDatos.DataSource = miOrigenDeDatos
    
    Dim total AS Decimal
    For Each row  AS DataGridViewRow In dgvMisDatos.Rows
     total += Convert.ToDecimal(row.Cells("NombreColumnaASumar").Value)
    Next
    
    txtTotal.Text = Convert.ToString(total)

     De donde:

     miOrigenDeDatos, representa la funte de informacion de donde alimentas al Datagridview actualmente

     NombreColumnaASumar, representa la columna que deseas sumar, en tiempo de diseño creamos las columnas y le asignamos un nombre, este es el que debes de usar.

     ---

     Espero te sea de utilidad.



    Saludos desde Monterrey, Nuevo León, México!!!

    • Marcado como respuesta luismizaba viernes, 4 de diciembre de 2015 15:45
    viernes, 4 de diciembre de 2015 2:24
  • hola

    Recuerda que debes mencionar en que lenguaje estas programando

    ademas si la idea es sumar podrias hacerlo con una query usando el SUM() de sql

    o si cargas un datatable podrias usar el Compute() para sumar una columna

    DataTable.Compute (Método) (String, String)

    en tu caso seria

    txttotal.Text = Convert.ToString(dt.Compute("SUM(total)", ""));

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta luismizaba viernes, 4 de diciembre de 2015 15:50
    viernes, 4 de diciembre de 2015 3:50

Todas las respuestas

  • Hola:

     Tienes dos caminos dependiendo como es que cargas los datos al control DataGridView.

     Si es por medio de una lista el camino es mas facil.

     txtTotal.Text= Convert.ToString(myLista.Sum(x => x.Precio))

     Si deseas sumar el valor usando el propio control entonces:

     Después de hacer el bindeo al origen de datos harías:

    dgvMisDatos.DataSource = miOrigenDeDatos
    
    Dim total AS Decimal
    For Each row  AS DataGridViewRow In dgvMisDatos.Rows
     total += Convert.ToDecimal(row.Cells("NombreColumnaASumar").Value)
    Next
    
    txtTotal.Text = Convert.ToString(total)

     De donde:

     miOrigenDeDatos, representa la funte de informacion de donde alimentas al Datagridview actualmente

     NombreColumnaASumar, representa la columna que deseas sumar, en tiempo de diseño creamos las columnas y le asignamos un nombre, este es el que debes de usar.

     ---

     Espero te sea de utilidad.



    Saludos desde Monterrey, Nuevo León, México!!!

    • Marcado como respuesta luismizaba viernes, 4 de diciembre de 2015 15:45
    viernes, 4 de diciembre de 2015 2:24
  • hola

    Recuerda que debes mencionar en que lenguaje estas programando

    ademas si la idea es sumar podrias hacerlo con una query usando el SUM() de sql

    o si cargas un datatable podrias usar el Compute() para sumar una columna

    DataTable.Compute (Método) (String, String)

    en tu caso seria

    txttotal.Text = Convert.ToString(dt.Compute("SUM(total)", ""));

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Marcado como respuesta luismizaba viernes, 4 de diciembre de 2015 15:50
    viernes, 4 de diciembre de 2015 3:50
  • Muchísimas gracias, me funciono perfecto, yo quise subir la imagen pero no pude, hombre muchas gracias por su ayuda, me has salvado la desesperanza.

    Muchas gracias nuevamente

    viernes, 4 de diciembre de 2015 15:45