É possível utilizar a seguinte sintaxe básica para executar uma PROCV a partir de outra folha utilizando o VBA:

 Sub Vlookup() Range(" B2 ").Value = WorksheetFunction.Vlookup(Range(" A2 "), Sheets(" Sheet2 ").Range(" A2:C11 "),3,False) End Sub 

Este exemplo específico procura o valor na célula A2 da folha atual no intervalo A2:C11 da folha denominada Folha2 e encontra o valor correspondente na terceira coluna do intervalo e, em seguida, atribui o resultado à célula B2 na folha atual.

Nota : O último argumento de Falso especifica que queremos uma correspondência exacta.

O exemplo seguinte mostra como utilizar esta sintaxe na prática.

Exemplo: Como utilizar a PROCV a partir de outra folha no VBA

Suponhamos que temos o seguinte conjunto de dados numa folha chamada Folha2 num livro de Excel que contém informações sobre vários jogadores de basquetebol:

Agora suponhamos que mudamos para a folha chamada Folha1 e gostaria de procurar o nome da equipa "Kings" no conjunto de dados de Folha2 e devolver o valor correspondente na coluna de assistências em Folha1 .

Para o efeito, podemos criar a seguinte macro:

 Sub Vlookup() Range(" B2 ").Value = WorksheetFunction.Vlookup(Range(" A2 "), Sheets(" Sheet2 ").Range(" A2:C11 "),3,False) End Sub 

Quando executamos esta macro, obtemos a seguinte saída:

A macro devolve corretamente um valor de 3 assistências para os Kings.

Se mudarmos o nome da equipa na célula A2 e, em seguida, executar novamente a macro, esta encontrará corretamente o valor das assistências para o novo nome da equipa.

Por exemplo, suponha que alteramos o nome da equipa para "Warriors" e executamos a macro novamente:

A macro devolve corretamente um valor de 4 assistências para os Warriors.

Nota : Pode encontrar a documentação completa para o VBA VLookup método aqui.