Notifications
Clear all

Somar itens com trecho na celula

5 Posts
3 Usuários
0 Reactions
871 Visualizações
(@dyego-vn)
Posts: 0
New Member
Topic starter
 

Boa tarde a todos,

estou construindo indicadores com VBA e preciso fazer um filtro.
Um sumifs com algumas condições e uma delas seria se o Left(Range("A:A"),3) = "ARG" , por exemplo.

3 = ARGENTINA
5 = CARGA
-8 = ALTURA
-2 =ARGUMENTO
5 = ALEMANHA
-1 = ARGELIA
4 = ARGILA
1 = AGRONOMIA

Sendo no exemplos acima os numeros representando o Range A:A e os nomes representando o Range B:B.

Meu codigo seria algo como Application.WorsheetFunctions.Sumifs(Range("A:A"),left(Range("B:B"),3),"ARG"),Range("A:A"),">0")

Retornaria um resultado de 7. Mas não da certo.
Como posso fazer isso no VBA mesclando o SUMIFS com o LEFT ?

Obrigado desde já galera !!!

 
Postado : 11/03/2016 12:14 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Com função matricial dá... mas daí não seria no VBA....
vc escreveria a função numa célula, pegaria o resultado.... Acredito que o WorksheetFunction não funciona matricialmente...

MAS, se funcionar, vc teria que escrever uma soma matricial, usando o application.worksheetfunction.sum() mesmo...
Dá uma procurada em soma matricial aqui no forum!

 
Postado : 11/03/2016 12:25 pm
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

dyego.vn,

Boa tarde!

Veja se assim resolve.

 
Postado : 11/03/2016 12:56 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Somases (Sumifs, por natureza e matricial e "aceita" caracteres coringa, assim experimente:

Application.WorksheetFunction.SumIfs(Range("A:A"), Range("B:B"), "ARG*", Range("A:A"), ">0")

 
Postado : 11/03/2016 1:04 pm
(@dyego-vn)
Posts: 0
New Member
Topic starter
 

Wagner e Reinaldo, ambos funcionaram, obrigado pelo tempo de vocês.
No meu caso o exemplo do Reinaldo ficou mais fácil por ser mais simples, já que trabalho com milhares de linhas.
Mas novamente obrigado aos dois!

 
Postado : 15/03/2016 11:34 am