Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Leozinho

Somar Coluna de DatagridView

Mensagens Recomendadas

Leozinho

Bom dia pessoal!

Sou novo em programação e também na comunidade.

Por favor, gostaria de saber como faço para somar uma coluna de datagridView com o seguinte critério ou condição:

D/C Valor

D 10,50

D 12,25

C -14,50

C -14,50

TextboxTotalDebito.text= somar todas as linhas da coluna "valor" verificando se na coluna "D/C" for igual a "D"

TextboxTotalCredito.text=.somar todas as linhas da coluna "valor" verificando se na coluna "D/C" for igual a "C"

Espero que tenha sido claro.

Agradeço muito desde já.

Leo

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Leozinho

Caro Cerzedelo, adaptei o código mas dá erro:

A conversão da cadeia de caracteres 'DC' no tipo 'Boolean' não é válida.

Não sei o que está errado. Acho que algo está faltando, ou seja, tem que percorrer todas as linhas, verificando se tem "D" ou "C", só então somar.

Aqui está o código:

Private Sub Button17_Click(sender As Object, e As EventArgs) Handles Button17.Click

If DataGridViewRegistros.ColumnHeadersVisible = "DC" Then

Dim Valor As Decimal

For Each col As DataGridViewRow In DataGridViewRegistros.Rows

valor = valor + col.Cells(8).Value ' numero 8 é a coluna "DC"

Next

TxtTotalDebito.Text = valor

End If

End Sub

Obrigado, conto com tua ajuda

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Cerzedelo

Se a datagridwiew contém uma coluna, onde tem registado D ou C consoante seja débito ou credito, o que terá de fazer é percorrer todas as linhas e colunas da datagridview, e quando encontrar a coluna onde está registado o D ou C, consoante essa letra, fazer a soma dos valores da coluna valor.

For i As Integer=0 To DataGridView1.Rows.Count-1
For j As Integer=0 To DataGridView1.Columns.Count-1
If (DataGridView1.Rows(i).Cells(j).Value=='D') Then
Soma+=DataGridView1.Rows(i).Cells(8).Value
Else if (DataGridView1.Rows(i).Cells(j).Value=='C') then
Soma1+=DataGridView1.Rows(i).Cells(8).Value
End if
Next
Next
TxtDebito.text=soma

O 8 será o numero da coluna no datagridview, onde tem os valores.

O código que postei, pode conter alguns erros, porque não o testei. Mas da para ficar com uma ideia do que se pretende.

Editado por Cerzedelo

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
Leozinho

Caro Cerzedelo,

Testei o código e funcionou perfeitamente! Muito obrigado, conto sempre com sua ajuda.

Com certeza, vai ter dúvida.

Saudações!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.