Como fazer uma macro para somar baseado em critérios

Boa tarde a todos, como criar uma macro para somar baseada em critérios? Exemplo:

Gostaria que somasse tudo que fosse baseado nos critérios abaixo:

Relatório Geral = Setor A, Setor B, Setor C, Setor D
Datas > = 1 (Jan) e < = 2 (Fev)

Gerar relatório acima com a soma dos defeitos do mês e acumulado baseado nesses critérios

Muito obrigado por enquanto!

Segue planilha em anexo.

Grato! MACRO.ods

@mdiego , como o @Conras disse, a programação em Macro deve ser a última alternativa.
Só por curiosidade resolvi fazer a macro, mas não achei diferença no tempo de execução dela e pela função SOMASES.
Se quiser conferir, segue o link:
https://drive.google.com/open?id=1-dqOliSQ4tjO6nLcazYCO86HPrbIySE9

Pela função Somases é mais rápido e tem a vantagem da planilha atualizar automaticamente. Com a macro, toda vez que você trocar o setor em “M2”, tem que clicar no botão gerar relatório pra atualizar a Planilha.
Além disso demora mais para abrir.

Olá @mdiego

Não há a necessidade de utilização de macro para esta situação.

Pode ser utilizado a Tabela Dinâmica ou Função SOMASES.

Segue seu ARQUIVO com exemplos.


Segue outro modelo de arquivo, seguindo com quantidade de dados para 30 mil linhas.

Com 80 mil linhas e 10 colunas, o arquivo pesou mais de 2.5M de capacidade

A função utilizada é a BDSOMA

Arquivo 2

Se te atende, marque a resposta como correta para auxiliar futuras buscas de conteúdo.

Olá, Corando!

Utilizando a função somases eu consigo fazer. O problema é que eu tenho uma planilha com 60 mil linhas é 30 colunas.

Gostaria de utilizar macro nesse caso porque o arquivo já é pesado, com as funções fica mais pesado ainda é muita das vezes acaba dando erro e fechando.

Obrigado pela sugestão.

Grato!

@mdiego sempre que precisar acrescentar novas informações, utilize comentário e não resposta. Em relação à sua planilha, já tentou utilizar a tabela dinâmica. Para uma quantidade massiva de dados que você possui em seu arquivo, em algum momento ela irá apresentar grande lentidão até com programações em macro. A programação em Macro deve ser a última alternativa, tendo em vista, que poucas pessoas irão conhecer como operar seu arquivo num futuro

Olá @mdiego segue duas opções com macro, espero que lhe ajude.

1588962048542751.ods

Ola @JúnioVieira, normalmente uso a 2a. opção, mas incluo no final da macro Colar valor ( ConvertFormulaToValue )

@JúnioVieira e @schiavinatto, de acordo co o @mdiego, ele possui mais de 60 mil conteúdos a serem utilizados na iteração da fórmula. A segunda opção para ele, vai travar o processo de cálculo, tomando o mesmo tempo da fórmula acrescentada diretamente. Fazendo a simulação com 80 mil linhas, e com a mesma quantidade de colunas que possui a planilha de exemplo, colando a simples fórmula de soma (total de defeitos) ela levou quase 5 min para calcular tudo. Em um banco de dados desse volume, ele tem 03 opções:

1- dividir a planilha em partes: mês a mês, setor por setor, semana a semana etc;

2- migrar para o base, mesmo assim podendo sofrer muita lentidão na impressão de relatórios;

3- migrar para um ERP de gerenciamento de produção.

Hoje na empresa que trabalho, possuo apontamentos produtos em tempo real através do SAP, são cerca de 2 mil apontamentos diários. Mesmo com sistema ERP e Intranet para visualização de relatórios, o sistema apresenta certa lentidão no tratamento dos dados.

Ola @JúnioVieira, @mdiego, @Conras, @SpartanBR, caso verídico de tratamento de dados, para um Inscrito no ask,( para termino de TCC), 156 colunas de 1.048.576 linhas, solução da macro conforme a 2a. opção do @JúnioVieira, célula a célula com a Conversão para valor, e no final de cada coluna um salvamento. Esta brincadeira levou quase 11 horas.

@schiavinatto Acredito mesmo neste tempo de cálculo. Infelizmente nem o LO nem o Excel possuí uma GPU forte o suficiente para tratamento de dados massivos como estes. Temos que ter em mente que o Calc ou Excel não são softwares de gerenciamento de dados, o que é muito comum pequenas empresas utilizarem como tal. Quando se chega a um patamar massivo de dados, está na hora de investir em um sistema SAAS ou ERP de gerenciamento de dados.