Critérios de anális...
 
Notifications
Clear all

Critérios de análise

5 Posts
2 Usuários
0 Reactions
1,092 Visualizações
(@ermesindeporto)
Posts: 24
Eminent Member
Topic starter
 

Oi pessoal,

Após várias tentativas e pesquisas não consegui resolver o problema, daí recorrer à vossa preciosa ajuda.
Seria possível na coluna “O” da “Folha1” ter 2 critérios de análise (ficheiro em anexo) ?
Os critérios de análise seriam: por nome coluna “U” e por “Pé direito” coluna “W” isto é, o resultado seria o que aparece na coluna “P” que está em cor azul. Por exemplo existiria 1 registo com o nome “PAULÃO” e com o “Pé direito”.
Obrigado.

 
Postado : 23/11/2014 10:52 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 


Veja se o resultado é o esperado:

C0le a fórmula abaixo em O8 e arraste:

=SOMARPRODUTO(--(Estatistica!$U$2:$U$100=B8);--(Estatistica!$W$2:$W$100=$O$7))

 
Postado : 23/11/2014 12:54 pm
(@ermesindeporto)
Posts: 24
Eminent Member
Topic starter
 

Obrigado Edson pela resposta, mas eu gostava de fezer com VBA (sem função) e tendo por base o código já iniciado.

 
Postado : 23/11/2014 2:04 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite!!

Veja se ajuda

Option Explicit
 
Sub AleVBA_13606()
     
    Dim lastrow As Long
     
    lastrow = Cells(Rows.Count, "B").End(xlUp).Row
     
    Application.ScreenUpdating = False
     
    Range("C8:N8").Formula = "=SUMPRODUCT(--(Estatistica!$U$2:$U$100=B8),--(Estatistica!$W$2:$W$100=$O$7))"
    Range("C8:N8").AutoFill Destination:=Range("C8:N" & lastrow)
    'Caso queira converter essa formula em valores, use a linha abaixo, caso não, insira um comentário
    Range("C8:N21").Value = Range("C8:N21").Value
    Application.ScreenUpdating = True
     
End Sub

Att

 
Postado : 23/11/2014 3:30 pm
(@ermesindeporto)
Posts: 24
Eminent Member
Topic starter
 

Boa noite Alexandre,

Antes de mais muito obrigado pela resposta, assim resolve o problema, mas sendo que voce percebe de VBA poderia, por favor, informar se era possivel, tendo em conta a rotina enviada no meu fcheiro, obter o mesmo resultado?

Este tipo de rotina (com funções) em ficheiros com muitas linhas não a torna lenta?

Como faço para na linha "Range("C8:N8").Formula = "=SUMPRODUCT(--(Estatistica!$U$2:$U$100=B8),--(Estatistica!$W$2:$W$100=$O$7))"" substituir
$U$100 e $W$100 pela ultima linha preenchida em vez de definir um range fixo?

Obrigado.

 
Postado : 23/11/2014 8:47 pm