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
Avatar do usuário
Por anadias
Posts Avatar
#64161
Pessoal, bom dia.
Poderiam me ajudar, por favor?
Preciso identificar na planilha (coluna COD_PARC) se há números não sequenciais para cada cliente, ou seja, verificar que parcela pulou. Por exemplo, o João tem a parcela 75, 76 e 78, portanto ele não tem a 77.
Agradeço imensamente.
Por osvaldomp
#64167
Seguem duas alternativas, veja se ajuda.

1. por fórmulas ~~~> cole uma cópia da fórmula abaixo em E3 e dê duplo clique no canto direito baixo de E3 para estender a fórmula pela coluna.
Para visualizar filtre a coluna E critério DIVERGENTE.
Código: Selecionar todos
=SEERRO(SE(D3>PROC(2;1/(C$2:C2=C3);D$2:D2)+1;"DIVERGENTE";"");"")
#
2. por Formatação Condicional, selecione A3:D10935 (ou C3:D10935) e utilize a fórmula abaixo, formate como desejar.
Código: Selecionar todos
=$D3>PROC(2;1/($C$2:$C2=$C3);$D$2:$D2)+1
anadias agradeceu por isso
Avatar do usuário
Por anadias
Posts Avatar
#64169
Osvaldo,
Você me salvou! Muitoooooooooo obrigada! Deu tudo certo! =DDDDD
Valeuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
osvaldomp agradeceu por isso
Avatar do usuário
Por anadias
Posts Avatar
#64183
Osvaldo,
Sem querer abusar da sua ajuda, mas existiria a possibilidade do Excel me dizer quais são as parcelas que estão faltando? Exemplo: Divergente - Faltam parcelas: 5, 6, 7

Agradeço mais uma vez pela imensa ajuda!
Por osvaldomp
#64189
#
Olá, Ana.

Vou tentar uma solução por fórmula. Qual a versão do Excel que você utiliza ?

Teria algum inconveniente se eu ordenar os dados de A a Z com base na coluna CLIENTE e do menor para o maior na coluna COD_PARCELA ? Me parece que isso facilitaria a criação da fórmula.

Se adotarmos uma solução por macro ao invés de solução por fórmula, aí teríamos bem mais recursos para retornar as informações, inclusive podemos utilizar uma planilha vazia no mesmo arquivo para replicar somente os nomes em que há falha na sequência numérica e colocar lá todo tipo de informação que lhe seja útil. Seria viável pra você esse tipo de solução ?
anadias agradeceu por isso
Avatar do usuário
Por anadias
Posts Avatar
#64195
Oi, Osvaldo!
Bom dia.

Utilizo a versão Plus 2016.

Imagina, pode ordenar os dados como for melhor pra você, por favor.

Quanto a macro, sinceramente não sei se seria viável. Essa planilha precisa ser importada no sistema do cliente e lá tem um limite de tamanho. Como a macro deixa mais pesada, não sei se poderá interferir nessa ou nas importações futuras, já que todo mês subo uma diferente, mas também é uma alternativa!

Muito obrigada!
Por osvaldomp
#64206
#
Olá, Ana.

Veja se na sua versão está disponível a função UNIRTEXTO(). Se não, a fórmula irá retornar #NOME, aí eu sugiro macro ou UDF.
A propósito, sobre o seu comentário "Como a macro deixa mais pesada ..." ~~~> se você quis dizer que a instalação de macro torna o arquivo maior, esse aumento é irrelevante. Por exemplo, o aumento é muito, muito, muito menor do que uma simples foto colocada na planilha.

Antes de colar as fórmulas abaixo na sua planilha ordene a tabela primeiro pelo CLIENTE de A a Z e depois, adicionar nível, por COD_PARCELA do menor para o maior.

em E3
Código: Selecionar todos
=SE(OU(C3<>C2;D3<=D2+1);"";"faltante(s)  --->  ")
#
em F3
Código: Selecionar todos
=SE(E3="";"";UNIRTEXTO(", ";;SE(ÉERROS(CORRESP(LIN(INDIRETO(D2&":"&D3));D2:D3;0));LIN(INDIRETO(D2&":"&D3));"")))
#
Se funcionar aí, selecione E3:F3 e aplique duplo clique no canto direito baixo de F3 para estender as fórmulas pelas colunas, ou arraste. Se você quiser, as duas fórmulas podem ser unidas em uma só.
anadias agradeceu por isso
Avatar do usuário
Por anadias
Posts Avatar
#64208
Oi, Osvaldo
Boa tarde!

Infelizmente não possuo a função UNIRTEXTO(). Até atualizei meu pacote, mas não adiantou.

Essa planilha é extraída mensalmente de um sistema e sempre vem casos diferentes. Fazendo uma macro, por exemplo, eu consigo colar por cima as informações que virão na planilha do mês que vem, sem a necessidade de alterar algo na macro para que ela funcione? Meu conhecimento ainda é bem limitado.

Estou te enviando a planilha original (tem muito mais colunas do que a que foi enviada anteriormente).
Caso seja simples usar pela macro, agradeço muito se puder me ajudar com isso mais uma vez.
Abraços
Por osvaldomp
#64209
[quote=anadias post_id=64208 time=1619626832 user_id=19572
Infelizmente não possuo a função UNIRTEXTO(). Até atualizei meu pacote, mas não adiantou.
Eu arrisquei pois vi comentários em alguns sites que essa função seria a partir da versão 2016, embora na ajuda oficial da MS consta que é partir da 2019.

Essa planilha é extraída mensalmente de um sistema e sempre vem casos diferentes.
Os dados e a quantidade de linhas poderão variar, mas CLIENTE sempre estará na coluna H e COD_PARCELA sempre estará na coluna M, ou poderão variar também ?

Fazendo uma macro, por exemplo, eu consigo colar por cima as informações que virão na planilha do mês que vem, sem a necessidade de alterar algo na macro para que ela funcione?
Eu sugiro o seguinte caminho: depois de testada você instala a macro em um arquivo Excel específico, de nome PERSONAL.XLSB, e salva esse arquivo na sua máquina.
Feito isso, sempre que você carregar o Excel, esse arquivo automaticamente será também carregado, porém em segundo plano, não será visto na tela, mas a macro nele instalada ficará disponível para ser utilizada em qualquer arquivo Excel ao clicar em um atalho de teclado, por exemplo, Ctrl+M, ou outro que você escolher ao instalar o arquivo.
Então, o que você precisará fazer para realizar o trabalho de destacar os números faltantes será: abrir o arquivo que você recebe mensalmente e apertar Ctrl+M.
Se você achar que este caminho lhe atende então eu vou elaborar o código e depois passo as dicas de como fazer a instalação. Enquanto isso se você quiser saber mais sobre o PERSONAL.XLSB (recomendo) o sábio Google traz muitas dicas.

[/quote]
Quanto à forma de apresentar o resultado da macro, aí você me diz como quer.
Se você quiser me passar quais os procedimentos que você irá fazer após relacionar os números faltantes, talvez parte dos procedimentos possa ser incluída na macro, reduzindo assim o seu trabalho.
Editado pela última vez por osvaldomp em 29 Abr 2021 às 11:21, em um total de 2 vezes.
anadias agradeceu por isso
Avatar do usuário
Por anadias
Posts Avatar
#64211
Oi Osvaldo, boa tarde.

As parcelas que faltam eu preciso ver se foram pagas pelo sistema do cliente, se não foram, aí sim eu insiro as linhas na planilha e preencho manualmente...por isso não daria para colocar na macro.

Tive uma ideia melhor e acho que me ajudaria mais ainda. Veja se é possível:

Na planilha "original" existe a coluna "E" (COD_ACORDO). Teria como ajustar essa fórmula que você fez anteriormente para que, ao invés do nome, ele faça a conferência por esse COD_ACORDO?

Por exemplo:
Na planilha consta a cliente "ANA ELISA GONCALVES DE ASSIS COUTO" possui dois COD_ACORDO (202470267 e 190376894) na 202470267 temos parcelas de 1 até 6, já na 190376894 temos parcelas 13 e 14. Portanto, como são acordos diferentes, não são divergentes as parcelas 7, 8, 9, 10, 11 e 12. Está tudo correto no caso dela.

Você consegue fazer que só seja divergente se estiver faltando parcelas que tenham o mesmo "COD_ACORDO"?

Juro que depois disso vou parar de te atrapalhar! :)

Obrigada novamente!!!
Por osvaldomp
#64212
anadias escreveu: 28 Abr 2021 às 16:14 Você consegue fazer que só seja divergente se estiver faltando parcelas que tenham o mesmo "COD_ACORDO"?
Ordene primeiro por COD_ACORDO e segundo por COD_PARCELA.
Experimente esta em X4.
Código: Selecionar todos
=SE(OU(E4<>E3;M4<=M3+1);"";"FALTANTE")
anadias agradeceu por isso
Avatar do usuário
Por anadias
Posts Avatar
#64213
Oi Osvaldo,
Não deu certo.

Colei e puxei a formula, mas todas as células ficaram vazias!
Editado pela última vez por anadias em 29 Abr 2021 às 10:57, em um total de 1 vez.
Por osvaldomp
#64215
"Ordene primeiro por COD_ACORDO e segundo por COD_PARCELA."

Se no seu print a linha logo abaixo do cabeçalho é a linha 3, então ordene novamente, pois em E3 deverá aparecer ~~~> 110039686
anadias agradeceu por isso
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