Notifications
Clear all

Usar PROCV em VBA

5 Posts
3 Usuários
0 Reactions
1,230 Visualizações
(@ramzero)
Posts: 127
Estimable Member
Topic starter
 

Pessoal boa noite

Tenho uma lista de códigos que cada um representa o nome de um produto

Uso essa tabela com o PROCV em outra planilha e funciona sem problema, porém numa outra preciso fazer o mesmo mas usando o VBA, tem como?

Exemplo:

Minha tabela

1 José
2 Maria
3 João
4 Clara

Daí no sistema recebo os dados assim:

-------A---B
1-----1---4
2-----2---3
3-----3---4
4-----2---1

Gostaria que aparecesse assim:

----------A-------------B
1-------José--------Clara
2-------Maria-------João
3-------João--------Clara
4-------Maria-------José

Obrigado

 
Postado : 29/05/2018 3:47 pm
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

RAMZERO,

Boa noite!

Anexe seu arquivo.

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 29/05/2018 5:35 pm
(@ramzero)
Posts: 127
Estimable Member
Topic starter
 

wagner, bom dia, tudo bem?

Arquivo anexado

Tentei usar essa estrutura abaixo no código, mas não funcionou

For c = c To Cells(Rows.Count, "A").End(xlUp).Row
    
    Range("E" & c).Value = Application.WorksheetFunction.VLookup(Range("H1:I4"), 2, False)
    Range("F" & c).Value = Application.WorksheetFunction.VLookup(Range("H1:I4"), 2, False)
    
Next c

De tempos em tempos a máquina me envia novos códigos que vão sendo acrescentados na última linha das colunas A e B, por isso queria automatizar o processo em VBA

Sinto que falta alguma coisa no código acima

Obrigado

 
Postado : 30/05/2018 4:58 am
xlarruda
(@xlarruda)
Posts: 732
Honorable Member
 

Segue:

Sub Procv()
Dim ul As Long
ul = Plan1.Range("A" & Rows.Count).End(xlUp).Row
For i = 1 To ul
Plan1.Range("E" & i).Value = _
WorksheetFunction.VLookup(Plan1.Range("A" & i).Value, Plan1.Range("H1:I" & ul), 2, 0)
Plan1.Range("F" & i).Value = _
WorksheetFunction.VLookup(Plan1.Range("B" & i).Value, Plan1.Range("H1:I" & ul), 2, 0)
Next i
End Sub

___________________________________________________________________________________________
Se a resposta atendeu sua dúvida, por favor, clique no Gostei e marque o Tópico como [Resolvido].

Att.

André Arruda

 
Postado : 30/05/2018 5:40 am
(@ramzero)
Posts: 127
Estimable Member
Topic starter
 

Mais uma vez resolvido xlarruda

Rodou certinho!

Obrigado

 
Postado : 30/05/2018 12:05 pm