Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Visual Basic clásico (http://www.forosdelweb.com/f69/)
-   -   sumar fila d un datagrid (http://www.forosdelweb.com/f69/sumar-fila-d-datagrid-367545/)

aldo1982 31/01/2006 06:20

sumar fila d un datagrid
 
wenas keria saber como podria hacer para sumar una fila y una columna de un datagrid

salu2

aldo1982 01/02/2006 06:13

Bueps Veo Ke Nadie Sabe Comose Hace :(

aldo1982 03/02/2006 07:57

alguien me podria contestar plssssssssssssss !!!

hunabku 03/02/2006 11:58

Pues yo haria la suma desde el query que llena el datagrid no se si te sirva eso:-)

aldo1982 04/02/2006 07:53

Cita:

Iniciado por hunabku
Pues yo haria la suma desde el query que llena el datagrid no se si te sirva eso:-)

es ke no se como hacer eso :S

mendezjosem 04/02/2006 09:54

buenas, yo se una manera de sumar una fila, el problema es q se tardara cada vez mas que tengas mas records pq contara uno a uno y te dira el resultado. Mi recomendasion es q no utilises el datagrid de VB, hay muchos VB Addons y eso ayuda creeme 100%. Tan pronto llege a mi casa te dire el nombre de el q tengo, es cm un Excel , creas funciones etc.

jrp01 04/02/2006 10:35

como seria la suma? puedes poner un ejemplo de como lo quieres hacer?

hunabku 04/02/2006 11:11

Puedes poner una consulta que te haga la suma digamos que quieres la suma de la columnabilletes, solo has la consulta select sum(consultabilletes)fromtabla, y con eso te sumara ya solo jalas ese resultado dentro del datagrid

aldo1982 05/02/2006 07:48

hola, la verdad keun ejemplo me sería de utilidad.

salu2 y muhas gracias

GeoAvila 05/02/2006 08:32

Cita:

Iniciado por aldo1982
hola, la verdad keun ejemplo me sería de utilidad.

salu2 y muhas gracias

creo que te estan dando el camino correcto es solo de ponerle enpeño... hace o bien trata de hacer lo que te estan diciendo e intenta si tenes algún error postealo.. pero no hagas eso.. porque se ve que lo único que queres hacer es copiar y pegar y no crea que sea lo correcto ...

nos vemos...

mendezjosem 05/02/2006 11:54

mira el programa se llama FarPoint, es cm un datagrid pero con muchas mas opciones, puedes formatiarlo cm sea, es cm un datagrid pero con las probabilidades de excel.

aldo1982 05/02/2006 15:44

es ke no conosco ningun parámetro del datagrid por eso pedi un ejemplo para guiarme

mendezjosem 05/02/2006 16:38

te voy a dar un ejemplo de como hacer uno bn facil..no lo prove en vb pero para q tengas una idea...
Esto seria usando un DAO 2.5 (controlador) y el dbgrid

Código:


Dim Sumatotal as Single, Numero as Single
Dim DbRecords as Integer

dBRecords = DB.recordset.recordcount
DB.recordset.movefirst

For i = 1 to DbRecords
Numero = DBGrid.Columns(X).Caption 'X = el numero de columna q quieres contar)
DB.recordset.movenext
Sumatotal = Numero + Sumatotal
next i

msgbox Sumatotal

espero q esto te ayude

aldo1982 05/02/2006 18:30

Cita:

Iniciado por mendezjosem
te voy a dar un ejemplo de como hacer uno bn facil..no lo prove en vb pero para q tengas una idea...
Esto seria usando un DAO 2.5 (controlador) y el dbgrid

Código:


Dim Sumatotal as Single, Numero as Single
Dim DbRecords as Integer

dBRecords = DB.recordset.recordcount
DB.recordset.movefirst

For i = 1 to DbRecords
Numero = DBGrid.Columns(X).Caption 'X = el numero de columna q quieres contar)
DB.recordset.movenext
Sumatotal = Numero + Sumatotal
next i

msgbox Sumatotal

espero q esto te ayude

MUCHAS GRACIAS AHI LO PRUEBO
SALU2 ;)

mendezjosem 06/02/2006 23:17

de nada , pa eso estamos pa ayudarnos mutuamente

data_uy 26/06/2006 08:10

YO USO ESTO

Private Sub Calcular_Click()
Dim I, Val1 As Integer
Dim Formato As String
Pagos.Text = " "
Formato = "###,###.00"
Correcto = MsgBox("DESEA CALCULAR EL MONTO....", vbYesNo, "CALCULA DE PAGO")
If Correcto = vbYes Then
For I = 0 To DBGrid1.ApproxCount - 1
DBGrid1.Row = I
Val1 = Format(Val1 + DBGrid1.Columns(14), Formato)
Next I
Pagos.Text = Format(Val1, Formato)
Else
Unload Me
End If
Calcular.Enabled = False
End Sub

P.D (ME SALTA UN ERROR CUANDO SON MUCHOS CAMPOS)
ERROR 6148 NUMERO DE FILA INCORRECTA

Eärandir 26/06/2006 11:19

Como ya mencionaron, sería mejor utilizar el recorset en lugar del grid, es decir, en lugar de recorrer el dbgrid fila por fila, sería mejor hacer un ciclo while hasta encontrar el EOF del recordset e ir sumando el campo que quieres.

Hay que recordar que el grid es solo la representación gráfica del recordset.

v5lord 06/10/2008 08:16

Respuesta: sumar fila d un datagrid
 
que tal.... te estan dando el camino correcto....... Lo mejor es usar el recorset no directamente con el objeto grid sino mas bien con el enlace a la data.......

Podrias montarlo con ADODC que es el compatible con el Datagrid ó con DATA que es compatible con Dbgrid de la siguiente manera:

CON ADO

Adodc.recordsource = "select sum(monto) as totalm from table where Id=' " & rtrim(ltrim(text1.text) & " ' "

Adodc.Refresh

Te explico...........

El Adodc.recordsource, es el acceso al filtro.

sum(monto) : especifica la suma (sum) del campo (monto) que se quiere calcular.

as totalm : Es el alias que quise colocarle (No es Necesario)

from table : es la tabla donde se encuentra el campo "monto"

y al final un filtro where que lo filtra por el ID que se encuentra en el text1.


Cualquier duda puedes comunicarte conmigo a mi correo [email protected]




La zona horaria es GMT -6. Ahora son las 03:19.

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.