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

Dúvidas sobre cálculos, funções simples e aninhadas, fórmulas matriciais, etc.
  • Avatar do usuário
Por SandroLima
#49707
Boa tarde, pessoal.

Estou precisando de ajuda na construção de uma fórmula ou solução que retorne a combinação de datas e itens únicos de uma tabela.

Os dados são extraídos da tabela "TB_Condominio" na aba CONDOMINIO.

Na Aba CONFIG, na coluna [Recebimentos] tentei através de uma fórmula alcançar o resultado desejado, porém, não obtive êxito.
Como dito antes, a fórmula deve combinar Datas e Itens Únicos da "TB_Condominio".
Exemplificando:
A data de 08/10/2019 teria como itens "Pagamento", "Antecipação" e "Aporte financeiro". Esse último (Aporte financeiro) se repete duas vezes para essa data (08/10/2019).
O resultado para essa data veria então ser:
- 08/10/2019 Antecipação
- 08/10/2019 Aporte financeiro
- 08/10/2019 Pagamento
Dessa forma, eliminando itens repetidos e ordenando.

Tentei filtrar (obter o resultado pretendido) de duas maneiras:
1) Na coluna [Concatenado] pensei em extrair todas s combinações e depois com outra coluna e outra fórmula extrair e colocar em ordem os itens únicos da coluna [Concatenado]
2) Na coluna [Itens únicos] através de uma fórmula extrair diretamente as datas e itens únicos.

Como podem ver (SETAS VERMELHAS) em nenhuma das tentativas consegui alcançar o resultado desejado (SETA AMARELA).

Alguém aí especialista nas fórmulas apontadas pelas SETAS VERMELHAS poderia me dar uma ajuda? Outras alternativas também podem ser sugeridas.

Segue planilha para verificação.

Muito obrigado.
Você não está autorizado a ver ou baixar esse anexo.
Por engrocha
Posts
#49709
Boa noite!
Não entendi bem o que precisa prezado, mas acredito que se determinar o "item" com base seja mais fácil para determinar as fórmulas.

Acredito que dessa forma lhe atenda (se foi isso que entendi).
Caso não explique um pouco melhor por favor.

Rocha
Você não está autorizado a ver ou baixar esse anexo.
Por SandroLima
#49711
Não é isso, engrocha.

Como tentei exemplificar no 1º tópico preciso que a fórmula ou a solução retornar (Datas + Itens) únicos.

Tentei fazer a fórmula com os critérios nas colunas [Concatenado] e [Itens Únicos].

Exemplifiquei com a data de 08/10/2019 que traz na TB_Condominio 4 eventos:
[Data Pgto] [Item]
08/10/2019 Pagamento
08/10/2019 Aporte financeiro
08/10/2019 Aporte financeiro
08/10/2019 Antecipação

O resultado Para a coluna [Itens Únicos] da TB_AuxReceb referente a essa data portanto deve ser:
08/10/2019 Antecipação
08/10/2019 Aporte financeiro
08/10/2019 Pagamento

O resultado final desejado está na coluna apontada pela seta amarela.

Nas fórmulas que coloquei nas colunas apontadas pelas setas vermelhas tem os critérios para a construção do resultado... infelizmente está dando erro.
Você não está autorizado a ver ou baixar esse anexo.
Avatar do usuário
Por Jimmy
Avatar
#49714
Olá Sandro,

Pode ser por VBA, criando uma function, ou quer mesmo via fórmula?

Sabe informar uma faixa de quantas linhas terá a planilha real (mínimo e máximo)?

Jimmy San Juan
Por SandroLima
#49715
Boa noite, Jimmy.
Pode ser por VBA, criando uma function, ou quer mesmo via fórmula?
Pode ser sim... sem problemas. A fórmula era por praticidade. Mas a function atenderia perfeitamente.

Então... a base de dados será a TB_Condomínio alimentada diariamente pelo período de um ano.
Somos 13, talvez 14 membros participantes do grupo.
Cada um deverá fazer em média 1 ou 2 pagamentos mensais, 1 antecipação e 1 aporte financeiro por mês... não mais que isso.
14 x 4 = 56 Antecipações / Pagamentos
Itens de despesa fixos mensais hoje são entre 7 - 10
Itens de despesa variáveis não devem ultrapassar mais que 5 mensais.
Em torno de 70 itens mensais... não mais que isso.
12 x 70 = 840 itens/ano.

Mas a function deverá extrair e concatenar somente os itens que tenham como critérios:
- Pertencem ao Grupo Antecipações / Pagamentos
- Pertencem ao mês e ano selecionados
Após extrair e concatenar a function deve extrair resultados únicos caso o resultado da concatenação seja repetido .

Pela atenção, obrigado.
Avatar do usuário
Por Jimmy
Avatar
#49718
Olá Sandro,

Segue a planilha com a Function.
Ela tem 4 parâmetros: 1) a faixa de datas; 2) a faixa de Itens; 3) A faixa de Grupo; e 4) A célula de cabeçalho da coluna onde está a function.

As 3 faixas devem ter a mesma quantidade de linhas, pois caso contrário emitirá msg de erro.

Quanto ao 4º parâmetro, amanhã vou pensar na possibilidade de eliminá-lo, mas por em quanto fica assim.

Com relação à performance, não sei como se comportará com 1000 linhas. É possível melhorar a performance, mas passaria a consumir mais memória. (o cobertor é curto kkk) Peço que teste e dê um retorno para decidirmos se vale a pena mudar.

Eu filtrei as linhas por mês e ano. Poderia ter feito com esses dados da planilha CONFIG, ou da planilha CONDOMINIO. Como não sabia qual usar, usei da planilha Config. Se não for isso, me avise.

Coloquei a função na coluna G. Os resultados não bateram com os resultados que você enviou, mas creio que o erro está nos teus resultados.

Nas mensagens que colaboram para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.

Jimmy San Juan
Avatar do usuário
Por Jimmy
Avatar
#49727
Bom dia Sandro,

Descuple!!!! Agora vai.

Jimmy San Juan
Você não está autorizado a ver ou baixar esse anexo.
Por SandroLima
#49753
Boa tarde, Jimmy.

Ainda não estudei a fundo o seu código para saber se poderia adaptá-lo... mas de fato o resultado esperado não é esse e sim o que coloquei manualmente na coluna de resultado esperado.

Vou tentar pontuar com as datas exemplificadas.

Suponhamos que eu selecione "Setembro" e "2019" para MesReferencia_Config e AnoReferencia_Config.
Baseado nas colunas [Grupos Despesa / Receita] = Antecipações / Pagamentos, [Mes] = Setembro e [Ano] = 2019 da tabela TB_Condominio teríamos o seguinte resultado inicialmente:

10/10/2019 Aporte financeiro
08/10/2019 Pagamento
09/10/2019 Aporte financeiro
09/10/2019 Aporte financeiro
08/10/2019 Aporte financeiro
08/10/2019 Aporte financeiro
08/10/2019 Antecipação
07/10/2019 Aporte financeiro
06/10/2019 Pagamento
05/10/2019 Aporte financeiro
05/10/2019 Pagamento
02/10/2019 Antecipação
02/10/2019 Aporte financeiro

que após concatenados e organizados por data e alfabeticamente resultariam em:

02/10/2019 Antecipação
02/10/2019 Aporte financeiro
05/10/2019 Aporte financeiro
05/10/2019 Pagamento
06/10/2019 Pagamento
07/10/2019 Aporte financeiro
08/10/2019 Antecipação
08/10/2019 Aporte financeiro
08/10/2019 Aporte financeiro
08/10/2019 Pagamento
09/10/2019 Aporte financeiro
09/10/2019 Aporte financeiro
10/10/2019 Aporte financeiro

e que após eliminados os repetidos resultariam em:

02/10/2019 Antecipação
02/10/2019 Aporte financeiro
05/10/2019 Aporte financeiro
05/10/2019 Pagamento
06/10/2019 Pagamento
07/10/2019 Aporte financeiro
08/10/2019 Antecipação
08/10/2019 Aporte financeiro
08/10/2019 Pagamento
09/10/2019 Aporte financeiro
10/10/2019 Aporte financeiro

11 resultados sem repetição Data/Item.

Acho que agora ficou mais claro... Tendo como critérios (para exemplo):
- Coluna [Grupos Despesa / Receita] = Antecipações / Pagamentos
- Coluna [Mes] = Setembro
- Coluna [Ano] = 2019

Qualquer dúvida estou à disposição.
Avatar do usuário
Por Jimmy
Avatar
#49768
Olá Sandro,
SandroLima escreveu:Como dito antes, a fórmula deve combinar Datas e Itens Únicos da "TB_Condominio".
Tire uma dúvida: quando disse DATAS (acima) quis dizer a coluna cujo nome é DATA, ou a coluna "VENCIMENTO", ou a coluna "DATA PGTO"? Eu achei que as Datas estavam na coluna DATA, e nem olhei pras demais na Function. Eu acho que usei a coluna errada porque nenhuma data dela é dia 02, e você usou dia p2 no seu exemplo.

Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.

Jimmy San Juan
Por SandroLima
#49780
É verdade.

Falha minha... tinha incluído [Data Pgto] nos critérios da fórmula que tentei usar mas não mencionei no texto qual era a coluna da Data.

Inclusive uso essa fórmula para a coluna [Mes]:
Código: Selecionar todos
=SEERRO(SE(DIA([@[Data Pgto]])<=15;PRI.MAIÚSCULA(TEXTO(DATA(ANO([@[Data Pgto]]);MÊS([@[Data Pgto]])-1;DIA([@[Data Pgto]]));"MMMM"));PRI.MAIÚSCULA(TEXTO([@[Data Pgto]];"mmmm")));"-")
Avatar do usuário
Por Jimmy
Avatar
#49781
Oi Sandro,

Bom agora estou meio perdido, e não sei se a bola tá com você ou comigo.

Você alterou a fórmula para a coluna correta de data? A função passou a dar o resultado correto? O que está faltando arrumar?

Jimmy San Juan
Por SandroLima
#49810
Boa tarde, Jimmy.

Então sobre a coluna de data a qual me refiro seria mesmo a coluna [Data Pgto]

Substitui lá na sua fórmula para a coluna [Data Pgto], Selecionei o MesReferencia_Config para Setembro e AnoReferencia_Config para 2019 mas ainda assim não chegou no resultado esperado como exemplificado na coluna "Resultado Desejado".

Peço que verifique, por favor.

Segue planilha.
Você não está autorizado a ver ou baixar esse anexo.
Avatar do usuário
Por Jimmy
Avatar
#49816
Olá Sandro,
SandroLima escreveu:... Selecionei o MesReferencia_Config para Setembro e AnoReferencia_Config para 2019 mas ainda assim não chegou no resultado esperado...
Acho que não chegou porque não há nada de setembro na planilha. Apenas outubro e novembro. Os próprios dados que você colocou como resultado desejado só tem outubro, nada de setembro.

Fora isso, na coluna Resultado Desejado tem um dia 07/10, mas na coluna de Data Pgto não tem nenhum dia 07. Tem dia 07 na coluna VENCIMENTO, mas pelo que eu entendi a coluna a ser usada é Data Vcto.

Esclarece isso pra mim.

Nas mensagens que colaboram para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.

Jimmy San Juan
Por SandroLima
#49819
Poxa, Jimmy.

Me desculpe novamente... até eu fiz confusão com as colunas de data.

Mas reforço a coluna de Datas é a [Data Pgto].
Já corrigi o resultado manual da coluna [Resultado Desejado]:
02/10/2019 Antecipação
02/10/2019 Aporte financeiro
04/10/2019 Aporte financeiro
05/10/2019 Aporte financeiro
05/10/2019 Pagamento
06/10/2019 Pagamento
08/10/2019 Pagamento
09/10/2019 Aporte financeiro
10/10/2019 Antecipação
10/10/2019 Aporte financeiro
11/10/2019 Aporte financeiro

Mas sobre o mês de referência é isso mesmo... essas datas são referentes ao condomínio de setembro.
Marquei com as setas para me fazer entender melhor de onde puxar o mês de referência na TB_Condominio.
Você não está autorizado a ver ou baixar esse anexo.
Avatar do usuário
Por Jimmy
Avatar
#49822
Sandro,

Agora entendi onde estão o Mês e o Ano. Eu estava comparando com o mês e ano da data do vencimento. Não tinha percebido que a comparação deveria ser feita com as últimas 2 colunas.

Estou te mandando a versão corrigida, e peço testes. Eu, pra falar a verdade, não tô satisfeito com a solução. Co 4 informações eu já tava achando que poderia ficar pesado (pra saber mesmo, só testado) e agora com 2 colunas a mais acho mais ainda. Peço que teste mesmo assim apenas para validar o procedimento, mas minha opinião é que devemos converter para SUB. Acho até que o resultado nem precisa ser dado em uma tabela, podendo ser apenas uma relação em uma única coluna.

Espero resposta dos testes.

Nas mensagens que colaboram para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.

Jimmy San Juan


Jimmy San Juan
Por SandroLima
#49828
Boa noite, Jimmy.

Não veio nada anexo.

Apenas para deixar claro se me fiz entender... Resumidamente do que preciso:

Extrair a combinação dos valores únicos da coluna [Itens] e [Data Pgto] em que os critérios para a TB_Condomínio são:
- Coluna [Grupos Despesa / Receita] = "Antecipações / Pagamentos"
- Coluna [Mês] = MesReferencia_Config
- Coluna [Ano] = AnoReferencia_Config

Por exemplo, obedecendo os critérios acima, para a data de 09/10/2019 pertencente ao [Grupos Despesa / Receita] = "Antecipações / Pagamentos", Coluna [Mês] = "Setembro" e Coluna [Ano] = 2019
Nós teríamos o seguinte resultado ao combinar [Item} e [Data Pgto]:
09/10/2019 Aporte financeiro
09/10/2019 Aporte financeiro
09/10/2019 Aporte financeiro

E o resultado final deve contar / retornar como um único item, ou seja uma única vez:
09/10/2019 Aporte financeiro

Mas e se tivessemos:
09/10/2019 Aporte financeiro
09/10/2019 Pagamento
09/10/2019 Pagamento
09/10/2019 Aporte financeiro
09/10/2019 Aporte financeiro
09/10/2019 Antecipação
09/10/2019 Aporte financeiro
09/10/2019 Pagamento
09/10/2019 Aporte financeiro

O resultado final deveria ser:
09/10/2019 Antecipação
09/10/2019 Aporte financeiro
09/10/2019 Pagamento

OBS.:
Tentei fazer com fórmula se vc observar em uma das colunas.
Seria uma espécie de CONCATENAR, somente se os critérios fossem atendidos. E depois de concatenar extrair os resultados únicos.
Editado pela última vez por SandroLima em 31 Out 2019 às 20:45, em um total de 2 vezes.
Avatar do usuário
Por Jimmy
Avatar
#49829
Sandro,

Esqueci de anexar novamente.

Segue.
Você não está autorizado a ver ou baixar esse anexo.
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