Olá pessoal!
Tenho uma planilha de dados como no exemplo anexo e preciso fazer a seguinte lógica:
Enquanto a próxima linha da coluna B (na tabela R) for igual a algum valor em "X" linhas anteriores na coluna E (na tabela S) faça: -> Onde "X" é um número configurável de zero ao infinito
-Somar a quantidade total na linha correspondente da coluna A (na tabela R) na coluna D (na tabela S)
-Se a letra da linha correspondente na coluna C (na tabela R) for "K", somar a linha correspondente da coluna A (na tabela R) na coluna D (na tabela S). Se for Y subtrair. E se for W ou Z, não faça nada (ignore, pule!)
-Se a próxima linha da coluna B (na tabela R) for diferente a "X" linhas anteriores (na tabela S), somente copiar a linha com os dados das 3 colunas ABC nas colunas DEF e enviar para baixo o que estava previamente preenchido (como se estivesse "empurrando" tudo pra baixo e a última linha de dados aparecendo no topo).
Em resumo somente é gerada nova linha quando os dados em F2 e F3 (nesse exemplo) forem diferentes. Se eu escolher 4 linhas para comparar, por exemplo, somente seria gerada nova linha quando os dados em F2, F3, F4 e F5 fossem diferentes do novo dado
-Se o resultado na coluna B for positivo, pintar a linha toda de uma cor, se for negativo, pintar de outra cor, se for zero deixar em branco
No exemplo segue como foi criada manualmente a tabela R a partir da tabela S usando esta lógica
Obs: A tabela R não chega pronta, os dados vão sendo recebidos e ela vai sendo criada durante a produção, sendo preenchida de A2:C2 linha a linha (e não se sabe até que linha vai chegar), portanto a programação tem que estar esperando novos dados para processar, e sempre em ordem de chegada, nunca pode ser pulado e voltar depois
Obrigado
Postado : 03/11/2017 6:07 pm