wenas keria saber como podria hacer para sumar una fila y una columna de un datagrid
salu2
| ||||
Cita: es ke no se como hacer eso :S
Iniciado por hunabku Pues yo haria la suma desde el query que llena el datagrid no se si te sirva eso ![]()
__________________ LA MUERTE ESTÁ TAN SEGURA DE VENCER QUE NOS DA TODA UNA VIDA DE VENTAJA |
| |||
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. |
| |||
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 |
| ||||
Cita: 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 ...
Iniciado por aldo1982 hola, la verdad keun ejemplo me sería de utilidad. salu2 y muhas gracias nos vemos...
__________________ * Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ Sitio http://www.geoavila.com twitter: @GeoAvila |
| ||||
es ke no conosco ningun parámetro del datagrid por eso pedi un ejemplo para guiarme
__________________ LA MUERTE ESTÁ TAN SEGURA DE VENCER QUE NOS DA TODA UNA VIDA DE VENTAJA |
| |||
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:
espero q esto te ayude 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 Última edición por mendezjosem; 05/02/2006 a las 17:08 |
| ||||
![]() Cita: MUCHAS GRACIAS AHI LO PRUEBO
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:
espero q esto te ayudeDim 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 SALU2 ;)
__________________ LA MUERTE ESTÁ TAN SEGURA DE VENCER QUE NOS DA TODA UNA VIDA DE VENTAJA |
| |||
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 |
| ||||
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.
__________________ If you want to know the answers, then u gotta ask the questions |
| |||
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] |