SOMAR COLUNA DATAGRID

USUARIO.EXCLUIDOS 24/04/2007 10:56:00
#213519
Boas galera... Alguem pode me dizer como fazer p somar uma coluna do data grid, a cada insercao de valor q é feita nessa coluna. vlw...
USUARIO.EXCLUIDOS 25/04/2007 15:09:16
#213725
usa esse codigo aqui

quando vc clica em uma celula do datagrid, ele joga os valores pra caixas de texto

    Private Sub dtgrdequip_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles dtgrdequip.MouseUp
Dim pt = New Point(e.X, e.Y)
Dim hti As DataGrid.HitTestInfo = dtgrdequip.HitTest(pt)
dtgrdequip.CurrentCell = New DataGridCell(hti.Row, hti.Column)
Dsequipamento.Clear()
OleDbDataAdapter1.Fill(Dsequipamento)
Me.BindingContext(Dsequipamento, "tabequipamento").Position = Me.BindingContext(Dsequipamento, "tabequipamento").Count - 1
If hti.Row <= Me.BindingContext(Dsequipamento, "tabequipamento").Position And hti.Row > -1 Then
txtsetor.text = Dsequipamento.Tables(0).Rows(hti.Row).Item("setor")
txtequipamento.Text = Dsequipamento.Tables(0).Rows(hti.Row).Item("equipamento")
txtcodigo.text = Dsequipamento.Tables(0).Rows(hti.Row).Item("codcadastro")
posicao = hti.Row
Else
Exit Sub
End If
End Sub


ai vc ve qual é o campo que vc quer e usa com baso nisso..
ele pega a linha exata que vc clicou...
abraços
USUARIO.EXCLUIDOS 25/04/2007 16:57:26
#213746
Cara, estou precisando do seguinte:
tenho um grid dados de um produto, os quais, cada um tem seu preço. Qdo todos estes forem listados no Grid, preciso da soma total automatica de todos eles num label ou textBox.
Mesmo assim VlW...
USUARIO.EXCLUIDOS 25/04/2007 19:09:58
#213777
Resposta escolhida
Para efeito de amosta, você pode utilizar o próprio DataSet, que foi utilizado para preencher o Grid, e fazer um loop somando o campo correspondente.

Eu utilizo essa sub, passando o DataSet


me.dgPrincipal.DataSource = ds.tables(0)

MostrarTotal(ds)

Public Sub MostrarTotal(ByVal ds as DataSet)
Dim Total as Double
Try
Total = 0

For i = 0 To ds.tables(0).rows(0).count - 1
If not isDbNull(ds.tables(0).rows(i)!Valor) Then
Total += ds.tables(0).rows(i)!Valor
Endif
Next
me.lblTotal.text = total
Catch ex as Exception
messagebox.show("Erro")
End Try
End Sub


Obs.: me perdoe se tiver algum erro de escrita do for, é que fiz sem ser na IDE do VS.NET, mas serve para você ter uma idéia.


USUARIO.EXCLUIDOS 26/04/2007 09:05:07
#213806
Cara, vlw, funcionou bele, so com uma correcao. Na linha do for, em vez de colocar .rows(0).count - 1, troquei por .rows.count - 1 pois estava dando erro. Isso no Vb 2003, nao sei em outros. Brigadao cara...


Tópico encerrado , respostas não são mais permitidas