Configuração De PARA  [Resolvido]

Visual Basic for Aplication e macros no Excel.
Regras do fórum
Sua dúvida foi respondida? Marque como RESOLVIDO em seus tópicos, usando o botão com marca verde. Imagem

Configuração De PARA

Mensagempor Pegorini » Sex Mai 17, 2019 7:40 am

Bom Dia Senhores.

Na minha pasta de trabalho há na plan1 uma coluna com o número de conta e outra com a descrição da conta. Como se fosse um cadastro.

na plan2 será inserido informações que devem ser checadas com o cadastro da plan1, porém é possível que a informação da célula D da plan 2 tenha outros caracteres que deverei ignorar por exemplo:

Na célula B da plai 1 há a descrição bola e na célula D da plan2 bola1 ou xbola, assim devo identificar somente bola.

Qual o objetivo? Que ao inserir a informação na célula C da plan 2 converta no número da célula A da plan1 fazendo um check com a descrição da célula B da plan1.

Eu conseguir fazer isso desde que na plan1 e plan2 tenham a mesma descrição por exemplo bola, mas se na plan2 tiver bola1 ou x bola não consigo, assim penso que tem que programar para que seja ignorado caracteres por exemplo *bola*, mas não sei fazer isso aplicado ao VBA por isso recorro a ajuda dos senhores.

Código: Selecionar todos
Application.EnableEvents = False
Application.ScreenUpdating = False

Dim x As Integer, y As Integer

For x = 2 To Cells(Rows.Count, "B").End(xlUp).Row ' Faz a contagem das células da coluna B da plan1


    For y = 2 To Sheets("Plan2").Cells(Rows.Count, "D").End(xlUp).Row ' Faz a contagem das células da coluna D da plan2

   
           
        If Cells(x, "B") = Sheets("Plan2").Cells(y, "D") Then 'Se as células de B for igual a  as células de D da plan2 então
       
        'Preciso que o conteúdo analisado em D seja por exemplo *bola1*, pois o conteúdo porderá ser ubola1, bolas, etc
       
       
           Sheets("Plan2").Cells(x, "D") = Cells(y, "A") ' As células de D da plan 2  serão = ao conteúdo das células A da plan1
           
           x = x + 1
           y = 1
       
        End If
   
    Next

Next

End Sub
Pegorini
Membro
Membro
 
Mensagens: 94
Registrado em: Ter Mar 12, 2019 12:48 pm
Localização: Itajaí/SC
Has thanked: 30 times
Have thanks: 4 times

{ SO_SELECT }

Re: Configuração De PARA

Mensagempor EdsonBR » Sex Mai 17, 2019 3:00 pm

Boa tarde, Pegorini

Qual o critério que determina a sequência? É um texto seguido sempre por algarismos? Segue algum padrão?

No seu código vc descreve num determinado trecho...
Pegorini escreveu: 'Preciso que o conteúdo analisado em D seja por exemplo *bola1*, pois o conteúdo porderá ser ubola1, bolas, etc

Mas há um problema com isso, por exemplo, quando ocorrer bola1 e bola10 ambos contêm "bola1", portanto haveria ambiguidade na tomada de decisão sobre qual categoria pertenceria.

Se não fosse por isso, até uma fórmula matricial atenderia, nem precisaria de VBA. Por exemplo, na Plan2 na célula E2 insira a fórmula abaixo, finalize com CTRL+SHIFT+ENTER depois arraste:
Código: Selecionar todos
=SEERRO(ÍNDICE(Plan1!$A$1:$B$11;SOMA(NÃO(ÉERRO(LOCALIZAR(Plan1!$B$1:$B$11;Plan2!D2)))*(LIN(Plan1!$B$1:$B$11)-LIN(Plan1!$B$1)+1));2);"")


Obs.: há um caractere de espaço a mais no final da "bola1 " da Plan1 que tomei a liberdade de remover, por achar que não foi proposital e gerar os resultados esperados.
Imagem

For this post the author EdsonBR thanked: 2
Pegorini (Sex Mai 17, 2019 10:23 pm) • wagner (Sex Mai 17, 2019 6:58 pm)
Avatar do usuário
EdsonBR
Membro
Membro
 
Mensagens: 582
Registrado em: Qui Nov 05, 2015 11:43 pm
Localização: Joinville, SC
Has thanked: 116 times
Have thanks: 364 times

Re: Configuração De PARA  [Resolvido]

Mensagempor wagner » Sex Mai 17, 2019 6:58 pm

Pegorini,

Boa noite!

Fiz algumas modificações no seu código e a busca é feita normalmente, todavia, conforme o grande mestre Edson já lhe disse, o fato de você ter bola1 e bola10 complica as coisas pois o operador LIKE do VBA faz a comparação e verifica que bola1 está contido em bola10 e, nesse caso, ele atribui logo o número 1 na célula D da Plan2 pois esse é a primeira ocorrência de bola1.

Veja se pode ser assim.
Se a resposta foi útil para você, por gentileza, Amigo, clique na mãozinha ao lado direito da ferramenta CITAR, no canto superior direito.

Atenciosamente
Wagner Morel

For this post the author wagner thanked:
Pegorini (Sex Mai 17, 2019 10:23 pm)
Avatar do usuário
wagner
Moderador
Moderador
 
Mensagens: 5462
Registrado em: Sáb Out 20, 2012 12:49 pm
Localização: Fortaleza - CE
Has thanked: 98 times
Have thanks: 2321 times

Re: Configuração De PARA

Mensagempor Pegorini » Sex Mai 17, 2019 10:23 pm

Olá Edson e Wagner.

Muito obrigado pelo retorno.


Entendi o comentários de vocês e analisarei.

Wagner tu é o cara. Ficou bem perto do que preciso.
Pegorini
Membro
Membro
 
Mensagens: 94
Registrado em: Ter Mar 12, 2019 12:48 pm
Localização: Itajaí/SC
Has thanked: 30 times
Have thanks: 4 times


Voltar para VBA & Macros

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 6 visitantes