Página 1 de 1

Vba Cont.se Registros exclusivos + Double Click

Enviado: 24 Jun 2020 às 21:53
por RahelCunha
Boa noite pessoal, tudo bem?

Podem me ajudar por favor?

Referente a este projeto, poderiam me ajudar com as formulas das células “O13” e “S13” da aba “GERENCIAL”? Acredito que seria a mesma linha de raciocínio da fórmula existente na célula "O9", porém sem o critério de data. Mas quando tentei excluir esse critério, a fórmula retorna o erro “ND”.

Por exemplo,

Na célula “S13” gostaria de contar por vba de forma que não se repita(exclusiva) todos os “cd_produto” da coluna “C” da aba “S.Cont.Valid.” em que a coluna “J” esteja vazia, ou seja, sem data de validade e que a coluna “B” a letra inicial seja diferente de “D” e diferente “T”(O resultado seriam 237 registros exclusivos).

Na célula “O13” gostaria de contar de forma que não se repita(exclusiva) todos os “cd_produto” da coluna “C” da aba “S.Cont.Valid.” em que os valores da coluna “H” sejam iguais a “picking” e que o "CD_ENDEREÇO"(COLUNA B) não inicie com a letra "D".(O resultado seria 15, pois 1 a coluna B começa com "D")

Após inserir o resultado nas células “S13” e “O13”, gostaria de dar um duplo clique e os valores que estiverem contando retornem as mesmas informações existentes na aba “S.Cont.Valid.”.

Por exemplo, ao retornar os 237 registros exclusivos, eu daria um duplo clique e seria exibida uma nova aba apenas com as informações desses 237 registros.

Muito obrigado.

Segue a planilha para análise.

https://drive.google.com/file/d/14hE6E4 ... sp=sharing

Re: Vba Cont.se Registros exclusivos + Double Click

Enviado: 25 Jun 2020 às 08:19
por babdallas
Veja se é isso.

Vba Cont.se Registros exclusivos + Double Click

Enviado: 25 Jun 2020 às 11:50
por RahelCunha
Bom dia!

Retornou uma pequena diferença na celula O13, teriam que ser 237 valores e estão contando 243, 6 registros a mais. A fórmula da s13 está perfeita.

Re: Vba Cont.se Registros exclusivos + Double Click

Enviado: 25 Jun 2020 às 12:01
por babdallas
Fui na coluna B, filtrei tudo que não começa com D e T. Na coluna J filtrei todos os vazios. Peguei a coluna C, copiei em uma planilha em branco. Removi as duplicatas e resultou em 243 exclusivos e não 237. Como você chegou ao 237?

Vba Cont.se Registros exclusivos + Double Click

Enviado: 25 Jun 2020 às 12:44
por RahelCunha
Eu copiei toda a planilha para uma planilha em branco, excluí tudo que começa com "d" e "t" e somente depois removi as duplicatas..Filtrei a coluna "j" em branco e retornou 237 conforme imagem abaixo. Mas fazendo da sua maneira retornaram 243 tbem. Vou fazer o teste novamente.

Re: Vba Cont.se Registros exclusivos + Double Click

Enviado: 25 Jun 2020 às 15:07
por RahelCunha
babdallas,

Consegue disponibilizar como ficaria por vba por favor?
O duplo clique seria por exemplo, esses 243 resultados que retornaram...Pra eu não ter de ficar filtrando e removendo duplicatas..Eu daria um duplo clique na célula que conta os 243("O13") e exibiria uma aba com esse 243 itens que estão sem data na coluna J. O mesmo para os 15 itens da célula "s13"..daria um duplo clique e esses 15 itens seriam exibidos.

Valeu.

Re: Vba Cont.se Registros exclusivos + Double Click

Enviado: 26 Jun 2020 às 10:30
por babdallas
Substitui as 4 funções que estavam complexas por funções feitas no VBA.

Quanto ao duplo clique, você quer apareça um formulário em VBA com os itens únicos. Deseja também que haja alguns campos para fazer filtro (Ex: código produto, linha, família, etc)?

Vba Cont.se Registros exclusivos + Double Click

Enviado: 26 Jun 2020 às 11:49
por RahelCunha
Muito bom.
Isso..Por favor...Ficaria ótimo esse filtro...O objetivo é verificar os produtos que são bens de consumo que não estão controlando validade e ir lá e corrigir o cadastro...E por exemplo...Toda vez que filtrarmos esse relatório os vinhos e aparelhos de barbear vão aparecer sem validade...Porque eu nunca vou lançar validade neles pq eles não controlam a validade...Mas aparecem nesse relatório pq a família deles é de bens de consumo...É possível excluir tudo que contenha a palavra vinho e aparelho de barbear automaticamente tbem quando atualizar?
Ou excluir os códigos desses produtos? Por exemplo...eu lançaria no vba todos os códigos da coluna "C" "CD_PRODUTO" que estão com validade vazia na coluna "J" mas que não precisa controlar validade e excluiria esses do formulário/listagem.
Por exemplo.. o código..6493134 é do VINHO SALTON INTENSO PINOT NOIR COLO NA, então eu excluiria esse item da minha base de dados...
E aew...sempre que eu for conferir um item que a validade for indeterminada...eu incluo ele nessa listagem do vba para que também seja excluído da minha base de dados "S.Cont.Valid.".
Talvez fui um pouco confuso...Qualquer coisa me fala que tento explicar de outra maneira.
Obrigado.

Re: Vba Cont.se Registros exclusivos + Double Click

Enviado: 26 Jun 2020 às 12:06
por babdallas
A minha ideia é, ao dar o duplo clique na célula, trazer a lista de itens em um listbox dentro de um userform no VBA. Também imaginei em trazer 2 combobox, uma de linha e outra de família do produto. Assim você fazer filtros e ir restringindo os valores exibidos na listbox.
Caso queira retirar alguns produtos cujas validades não precisam ser monitoradas validadas, o ideal seria ter uma coluna na base de dados indicando quais produtos devem ter check de validade e quais não. Ou então criar uma lista de produtos cuja validade não importa.

Vba Cont.se Registros exclusivos + Double Click

Enviado: 26 Jun 2020 às 12:20
por RahelCunha
Ótima essa idéia de criar uma lista de produtos cuja validade não importa e desconsiderar. Ficaria top.

Re: Vba Cont.se Registros exclusivos + Double Click

Enviado: 29 Jun 2020 às 10:42
por babdallas
Dê um duplo clique nas células O13 e S13. Veja se ajuda.

Outra possível melhoria seria colocar alguns checkbox dizendo o início do código do produto (Ex: Todos os tipos; Não começa com D, Não começa com T, etc).

Vba Cont.se Registros exclusivos + Double Click

Enviado: 29 Jun 2020 às 12:45
por RahelCunha
Ajuda demais. Ficou muito bom. Obrigado.
Agora para finalizar esse projeto ficaria pendente apenas a questão dos itens que mesmo a validade estando vazia, não deveriam ser somados ao meu resultado final...Como vinhos, giletes,etc.
Acredito que um filtro ideal para isso seja o código do produto(Coluna C).
Por exemplo...o vinho de código 6494186 está sem validade..Mas ele não deve controlar validade mesmo não..então eu não somaria ele nos sem validade..ao invés de ficar 243 itens sem validade..seriam apenas 242...E aew eu criaria uma lista com todos os produtos nessa situação e sempre que gerar o arquivo eles vão vir novamente, mas serão desconsiderados pra não ter que ficar olhando mais de 1 vez.

Re: Vba Cont.se Registros exclusivos + Double Click

Enviado: 29 Jun 2020 às 12:56
por babdallas
Envie uma tabela então com todos os produtos que de fato não precisam ter data de validade. Sem isso fica difícil de saber qual produto deve ser desconsiderado.

Vba Cont.se Registros exclusivos + Double Click

Enviado: 29 Jun 2020 às 14:36
por RahelCunha
Segue tabela dos itens atuais. Porém, eles seriam variáveis..amanhã pode ter algum item novo. Aew eu teria que atualizar essa tabela.https://drive.google.com/file/d/1glmCLL ... sp=sharing

Vba Cont.se Registros exclusivos + Double Click

Enviado: 29 Jun 2020 às 15:02
por RahelCunha
Pensei em gravar uma macro excluindo esses itens e sempre que houver um item novo acrescento o código dele na macro, acha que daria certo?

Re: Vba Cont.se Registros exclusivos + Double Click

Enviado: 29 Jun 2020 às 17:17
por RahelCunha
babdallas escreveu:Envie uma tabela então com todos os produtos que de fato não precisam ter data de validade. Sem isso fica difícil de saber qual produto deve ser desconsiderado.
No código abaixo, filtrei 2 i tens de exemplo e depois eu excluí a seleção...É mais ou menos isso..Aew eu só incluiria no filtro código a código que eu preciso desconsiderar.

Porém, ele está selecionando a célula "B41" porque é a primeira linha que existe 1 dos itens filtrados e nem sempre será ela. Como eu faço para excluir todos os códigos que filtrei independentemente da linha por favor?
Código: Selecionar todos
ActiveSheet.Range("$B$1:$J$2202").AutoFilter Field:=2, Criteria1:= _
        "=3154441", Operator:=xlOr, Criteria2:="=6482299"
    Range("B41").Select
    Range(Selection, Selection.End(xlToRight)).Select
    Range(Selection, Selection.End(xlDown)).Select
    Selection.EntireRow.Delete
    Selection.AutoFilter

Re: Vba Cont.se Registros exclusivos + Double Click

Enviado: 29 Jun 2020 às 17:30
por babdallas
1) Esta lista que você gerou foi de forma manual ou tem algum regra( Ex: Tudo que iniciar com a palavra vinho, etc)? Esta lista é gerada a partir da base de dados ou ela é fixa independente da base de dados?
2) Se estes itens você deseja excluir da base de dados, onde você escolheria esta opção de excluir? A exclusão seria verifcar quais itens da base de dados esta nesta lista auxiliar e deixar somente elas. Seria isso?

Creio que oq está faltando eu entender melhor é o fluxo dos seus dados, ou seja, de onde eles vêm, o que deseja fazer com eles, como deseja interagir com os dados (formulário VBA, Excel nativo, etc).

Re: Vba Cont.se Registros exclusivos + Double Click

Enviado: 01 Jul 2020 às 10:49
por babdallas
Fiz algumas melhorias. Veja se te agrada.

Re: Vba Cont.se Registros exclusivos + Double Click

Enviado: 01 Jul 2020 às 21:27
por RahelCunha
babdallas escreveu:Fiz algumas melhorias. Veja se te agrada.
Ficou simplesmente perfeito.
Sem palavras para agradecer o apoio, a dedicação e por não ter desistido de ajudar apesar dos obstáculos.
Essas melhorias irão somar muito, pois irão facilitar muito o filtro.

Projeto concluído com sucesso graças ao amigo. Vlwww.