Notifications
Clear all

Pesquisa e soma de valores do resultado

3 Posts
2 Usuários
0 Reactions
831 Visualizações
(@kurkas)
Posts: 85
Estimable Member
Topic starter
 

Bom dia,
Espero que me possam ajudar....mais uma vez!!!
Tenho uma grelha com 3 colunas e valores.
Coluna A - Secção
Coluna B - KM´S
Coluna C - Litros

Estes valores dizem respeito a km´s efetuados e combustível gasto.
A coluna A pode ter valores repetidos, visto haver várias viaturas nas Secções.
No userform de pesquisa quando seleciono "4ª" (por exemplo) e devolve na folha2 todos os que encontra.
O que eu queria mesmo, e para efeito de estatística, era que quando selecionasse "4ª" ele me devolvesse apenas 4ª e respetivos somatórios, km´s e litros.

Obrigado

 
Postado : 14/09/2015 2:01 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Uma possibilidade

Sub Pesquisa()
Dim lastRow As Long, lastResultRow As Long, X As Long
Dim Km As Long, Litros As Long
        
' Verifica qual a ultima célula preenchida
lastRow = Folha1.Cells(Rows.Count, 1).End(xlUp).Row
        
' Apaga valores anteriores
Folha2.Range("A2:f500").ClearContents
        
lastResultRow = 2 'linha resultado
        
' Ciclo em todas as linhas
For X = 2 To lastRow '1 Linha dados pequisa
        
    ' verifica se o valor é igual ao da pesquisa
    If Folha1.Cells(X, 1).Value = TextBox1.Text Then '1 coluna pequisa
        Km = Km + Folha1.Cells(X, 2).Value
        Litros = Litros + Folha1.Cells(X, 3).Value
    End If
Next
    Sheets("Folha2").Range("A" & lastResultRow) = TextBox1.Text
    Sheets("Folha2").Range("B" & lastResultRow) = Km
    Sheets("Folha2").Range("C" & lastResultRow) = Litros
    lastResultRow = lastResultRow + 1
End Sub
 
Postado : 14/09/2015 7:13 am
(@kurkas)
Posts: 85
Estimable Member
Topic starter
 

Boa tarde,
É isso mesmo, funcionou na perfeição!!
Obrigado

 
Postado : 14/09/2015 10:40 am