Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
  • Avatar do usuário
  • Avatar do usuário
Por jrbsantos
#22446
Boa tarde a todos!
Caros amigos preciso fazer um cálculo com VBA mais ele tem que somar apenas as linhas que seguirem o mesmo critério.
O código deve verificar qual a conta contábil, centro de custo, mês e ano e somar apenas as linhas que tiverem esse mesmos valores
Abaixo um exemplo:

Imagem

Nesse exemplo eu quero somar as linhas da conta contábil 484301, centro de custo 2059000000, do mês Janeiro do ano de 2014.

Os valores estão na segunda aba:

Imagem

No exemplo a soma dos valores retornados seria 2 pois apenas duas linhas corresponderam aos critérios: conta contábil 484301, centro de custo 2059000000, mês Janeiro, ano de 2014.

Imagem

Alguém pode me ajudar, detalhe a quantidade de linhas pode variar então acredito que não posso especificar um range de linhas fixo.

Obrigado a todos!
Por jrbsantos
#22448
O problema é que com fórmula a planilha leva mais que 24 horas para gerar o calculo pois são 45.000 linhas e 36 colunas (3 anos)
Avatar do usuário
Por FelipeMGarcia
Avatar
#22449
Amigo, na verdade a fórmula irá fazer o cálculo somente das colunas de centro de custo, conta contábil, mês e ano, você pode usar a função SOMARPRODUTO(--(Intervalo centro de custo=centro de custo);--(intervalo conta contábil=conta);--(intervalo data=mês);--(intervalo ano=ano)) se for pra contar quantos itens tem que atendem esses critérios.
Avatar do usuário
Por FelipeMGarcia
Avatar
#22450
Segue um exemplo para verificar como ficaria.

abs
Você não está autorizado a ver ou baixar esse anexo.
Avatar do usuário
Por gfranco
Avatar
#22452
Boa tarde.
Sugiro postar uma réplica da sua planilha (com dados fictícios mas mesma estrutura) para poder dar uma opinião mais objetiva mas, ao que parece, uma consulta com powerquery e depois uma única medida no powerpivot me parece que trariam um desempenho muito melhor.
Nota: precisa ter excel 2010 ou superior para utilizar os suplementos citados acima.
AT
Gfranco.
Avatar do usuário
Por FelipeMGarcia
Avatar
#22454
Segue exemplo com PowerPivot e tabela dinâmica.

Abs
Você não está autorizado a ver ou baixar esse anexo.
Avatar do usuário
Por gfranco
Avatar
#22460
Só por curiosidade fiz um modelo aqui com 100.000 linhas de dados e 36 colunas (meses dispostos linearmente).
Subi a tabela pro prowerquery, normalizei as colunas dos meses (colunas não dinâmicas) e adicionei ao modelo.
No power pivot, fiz apenas uma medida ( soma do total saldo e carreguei ( na mesma pasta da base de dados) a tabela dinâmica.
Depois fechei o arquivo, abri uma nov pasta de trabalho e agora só conectei com a primeira. Fiz o mesmo ETL, carreguei somente como conexão e adicionei ao modelo. Medida feita, desci a tabela dinâmica e fiz uns cálculos.
Resumo:
1º arquivo ficou com 30 MB e 2º arquivo com 7 MB.
Nos dois casos a tabela dinâmica NÃO ENROSCOU, e olha que o PC aqui não é nenhum avião!.
Por jrbsantos
#22512
Franco obrigado pelo retorno, o problema que a planilha tem várias abas em uma aba é inserida a informação que não vem no formato correto, em outra aba é feito o tratamento das informações para tirar os caracteres inválidos etc, não são apenas duas abas os prints que eu coloquei são apenas para exemplo.
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord