Columnas de un datagrid

Hola perdón por quitarles el tiempo pero les agradecería mucho si me dieran la solución de como sumar una columna de un datagrid tengo un datagrid que es un detalle de una factura la columna 5 tiene la cantidad
Y tiene 7 filas como hago para sumar la columna cinco de las 7 filas para sacar el valor a pagar
Gracias de antemano...

1 Respuesta

Respuesta
1
¿Vos quieres entonces 7 totales?
Necesitas 7 variables para ir guardando el contenido de la suma de cada una de las filas...
Bueno te vas al primer registro
No se que usas pero con movefirst tiene que hacerlo
Ahí tomas todos los valores que necesites usando este método
datagrid. Columns(5) donde 5 es una de las columnas que tiene cantidades ... La primer columna es la 0
Y esto con todas las columnas que necesites la 6 la 7 etc.
Movefirst
debes usar un do while not recordset.eof
aca sumas las columnas que necesites de cada registro a la variable de totales
pone movenext
para que avance al siguiente registro
loop
asi recorrera todos los registros y sumara las columnas que necesites...
Es la unica forma que conozco para hacer eso...
Te paso uno que hice yo con un listview, puedes modificarlo para que funcione con el datagrid...
Dim totalAbiertos As Integer
Dim totalCerrados As Integer
Dim totalTiempo As Integer
Dim totalmaximo As Integer
totalAbiertos = 0
totalCerrados = 0
totalTiempo = 0
totalmaximo = 0
With rstEficiencia
' Si no hay datos...
If (.BOF And .EOF) Then
MsgBox "No se han encontrado los datos buscados"
Else
cmdImprimir.Enabled = True
' Mostrar los datos hallados
ListView3.ListItems.Clear
.MoveFirst
Do While Not .EOF
Set ListItemEficiencia = ListView3.ListItems.Add(, , .Fields("cod_empleado") & "")
ListItemEficiencia.SubItems(1) = .Fields("ape_empleado") & ""
ListItemEficiencia.SubItems(2) = .Fields("nom_empleado") & ""
ListItemEficiencia.SubItems(3) = .Fields("Abiertos") & ""
ListItemEficiencia.SubItems(4) = .Fields("Cerrados") & ""
If .Fields("Cerrados") = 0 Then
promedio = 0
Else
promedio = .Fields("Tiempo_Acumulado") / .Fields("Cerrados")
End If
ListItemEficiencia.SubItems(5) = promedio & ""
ListItemEficiencia.SubItems(6) = .Fields("Maximo") & ""
totalAbiertos = totalAbiertos + rstEficiencia.Fields!Abiertos
totalCerrados = totalCerrados + rstEficiencia.Fields!Cerrados
totalTiempo = totalTiempo + rstEficiencia.Fields!Tiempo_Acumulado
If rstEficiencia.Fields!maximo > totalmaximo Then
totalmaximo = rstEficiencia.Fields!maximo
End If
.MoveNext
Loop
End If
End With
Cualquier cosa me avisas a ver si te puedo ayudar

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas