Como utilizar o VLOOKUP para devolver, juntamente com o valor procurado, a respetiva cor de fundo no Excel?
Suponha que tem uma tabela como a apresentada na imagem seguinte. Pretende verificar se um valor especificado está presente na coluna A e, em caso afirmativo, obter o respetivo valor correspondente juntamente com a sua Cor de Fundo na coluna C. Como pode fazê-lo? O método descrito neste artigo ajuda-o a resolver este problema.

VLOOKUP e devolver Cor de Fundo com o valor procurado através de uma função definida pelo utilizador
VLOOKUP e devolver Cor de Fundo com o valor procurado através de uma função definida pelo utilizador
Siga estes passos para procurar um valor e obter o seu correspondente, incluindo a Cor de Fundo, no Excel.
1. Na folha de cálculo que contém o valor que pretende procurar com VLOOKUP, clique com o botão direito do rato no separador da folha e selecione Ver Código no menu de contexto. Veja a imagem:

2. Na janela do Microsoft Visual Basic for Applications aberta, copie o seguinte código VBA para a janela de Código.
Código VBA 1: VLOOKUP e devolver Cor de Fundo com o valor procurado
Sub Worksheet_Change(ByVal Target As Range)
Dim I As Long
Dim xKeys As Long
Dim xDicStr As String
On Error Resume Next
Application.ScreenUpdating = False
xKeys = UBound(xDic.Keys)
If xKeys >= 0 Then
For I = 0 To UBound(xDic.Keys)
xDicStr = xDic.Items(I)
If xDicStr <> "" Then
Range(xDic.Keys(I)).Interior.Color = _
Range(xDic.Items(I)).Interior.Color
Else
Range(xDic.Keys(I)).Interior.Color = xlNone
End If
Next
Set xDic = Nothing
End If
Application.ScreenUpdating = True
End Sub 3. Em seguida, clique em Inserir > Módulo e copie o seguinte código VBA para a janela do Módulo.
Código VBA 2: VLOOKUP e devolver Cor de Fundo com o valor procurado
Public xDic As New Dictionary
Function LookupKeepColor (ByRef FndValue, ByRef LookupRng As Range, ByRef xCol As Long)
Dim xFindCell As Range
On Error Resume Next
Set xFindCell = LookupRng.Find(FndValue, , xlValues, xlWhole)
If xFindCell Is Nothing Then
LookupKeepColor = ""
xDic.Add Application.Caller.Address, ""
Else
LookupKeepColor = xFindCell.Offset(0, xCol - 1).Value
xDic.Add Application.Caller.Address, xFindCell.Offset(0, xCol - 1).Address
End If
End Function 4. Após inserir os dois códigos, clique em Ferramentas > Referências. Em seguida, marque a caixa Microsoft Script Runtime na caixa de diálogo Referências – VBAProject. Veja a imagem:

5. Prima as teclas Alt + Q para sair da janela do Microsoft Visual Basic for Applications e regressar à folha de cálculo.
6. Selecione uma célula vazia adjacente ao valor procurado e introduza a fórmula =LookupKeepColor(E2,$A$1:$C$8,3) na Barra de Fórmulas, depois prima Enter.

Nota: Na fórmula, E2 contém o valor que irá procurar, $A$1:$C$8 é o intervalo da tabela e o número 3 indica que o valor correspondente a devolver se encontra na terceira coluna da tabela. Ajuste-os conforme necessário.
7. Mantenha a seleção na primeira célula de resultado e arraste a Alça de Preenchimento para baixo para obter todos os resultados, incluindo as respetivas Cores de Fundo. Veja a imagem.

Artigos relacionados:
- Como copiar a formatação da célula de origem ao utilizar o VLOOKUP no Excel?
- Como utilizar o VLOOKUP no Excel e obter o resultado no formato de data, em vez de um número?
- Como utilizar o VLOOKUP para somar valores no Excel?
- Como utilizar o VLOOKUP para procurar um valor de retorno na célula adjacente ou seguinte no Excel?
- Como utilizar o VLOOKUP para procurar um valor no Excel e obter como resultado Verdadeiro ou Falso (ou Sim ou Não)?
As Melhores Ferramentas de Produtividade para o Office
Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...
Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil
- Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
- Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!
Todos os suplementos Kutools — num único instalador.
Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.
- Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
- Um instalador, uma licença— configuração em minutos (pronto para MSI)
- Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
- Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
- Melhor relação qualidade-preço— poupe face à compra individual dos suplementos