Jump to content
Joel Torres

Filtrar dados por categoria e somando valores dessa categoria

Recommended Posts

Joel Torres

Boa noite,

Tenho um pequeno problema que ando ás voltas já alguns dias atrás.

Gostava que quando filtrasse os dados da BD, me apresentasse os dados do mês e do ano selecionados e que me somasse os valores daquele ano e mês correspondente.

Eu quero que o Valor Total fosse do ano e do mês selecionado.

Utilizo BD em Access.

Cumprimentos

sdd.png

Share this post


Link to post
Share on other sites
miglaranjeira

Boa tarde

Envia o comando de filtro que está a ser utilizado para a soma.

O campo mês e ano são campos tal qual estão na tabela? ou estão a ser extraídas da data do movimento (despesa)?

Cumprimentos

 

Share this post


Link to post
Share on other sites
Joel Torres
9 horas atrás, miglaranjeira disse:

Boa tarde

Envia o comando de filtro que está a ser utilizado para a soma.

O campo mês e ano são campos tal qual estão na tabela? ou estão a ser extraídas da data do movimento (despesa)?

Cumprimentos

'Filtra e conta os registos do ano e mês seleccionados nas comboboxs
    Public Sub CalcularRegistosDespesasGeraisFiltradasAno()
        Try
            If cnAdoNetConexao.State = ConnectionState.Closed Then AbreBaseDados()
            Dim sql As String = "SELECT COUNT(*) FROM Despesas WHERE Ano LIKE '*'"
            Dim cmd As OleDbCommand = New OleDbCommand(sql, cnAdoNetConexao)
            lblTotalRegistadosDespesaGeral.Text = "Existem (" & NumDadoAtualDespesasGerais & ") registos."
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub

Abaixo é o código que pertence á MaskedTexbox= filtro de pesquisa do ano

'Filtrar o ano a ser pesquisado
Private Sub mskFiltrarAnoDespesaGeral_KeyDown(sender As Object, e As KeyEventArgs) Handles mskFiltrarAnoDespesaGeral.KeyDown
        Dim txt As String = Nothing
        For Each row As DataGridViewRow In dgvDespesasGerais.Rows
            For Each CELL As DataGridViewCell In dgvDespesasGerais.Rows(row.Index).Cells
                If mskFiltrarAnoDespesaGeral.Text <> "" Then
                    If CELL.ColumnIndex = 9 Then
                        txt = CELL.Value.ToString.ToLower
                        If txt.Contains(mskFiltrarAnoDespesaGeral.Text.ToLower) Then
                            If txt.StartsWith(mskFiltrarAnoDespesaGeral.Text.ToLower.Substring(0, mskFiltrarAnoDespesaGeral.Text.Length)) Then
                                NumDadoAtualDespesasGerais = CELL.RowIndex
                                dgvDespesasGerais.CurrentCell = dgvDespesasGerais.Rows(NumDadoAtualDespesasGerais).Cells(9)
                                CalcularRegistosDespesasGeraisFiltradasAno()
                            End If
                        End If
                    End If
                Else
                    dgvDespesasGerais.Rows(CELL.RowIndex).Selected = False
                    CalcularRegistosDespesasGeraisFiltradasAno()
                End If
            Next
        Next
    End Sub

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.