Você tem uma planilha com milhares de linhas onde os nomes dos produtos estão no formato antigo e precisa convertê-los para o formato novo — tudo de uma vez, sem erro e sem gastar horas fazendo manualmente. Ou recebeu uma exportação de sistema com códigos internos que precisam ser traduzidos para os nomes que os clientes reconhecem. Esses cenários são perfeitos para a técnica de de para no Excel usando o PROCV, onde uma tabela de mapeamento e uma fórmula fazem todo o trabalho pesado automaticamente. Neste artigo iremos mostrar como usar o PROCV para criar um sistema de de para robusto, eficiente e fácil de manter.
Montando a base: a tabela de mapeamento como fonte de verdade
O primeiro passo para o de para com PROCV é criar a tabela de mapeamento — a tabela que define qual valor original corresponde a qual valor de destino. Essa tabela é o coração do sistema: todas as regras de substituição ficam centralizadas aqui, e qualquer alteração que você fizer se propaga automaticamente para toda a base de dados sem precisar tocar nas fórmulas. Coloque a tabela de mapeamento em uma aba separada da base de dados para que ela fique claramente identificada como uma tabela de referência, não como dados da operação.
A estrutura da tabela de mapeamento tem exatamente duas colunas: a coluna “De” (os valores originais que você quer substituir) e a coluna “Para” (os valores de destino correspondentes). A coluna “De” precisa ter valores únicos — sem repetições — para que o PROCV funcione corretamente. Se houver dois mapeamentos para o mesmo valor original, o PROCV vai encontrar apenas o primeiro e ignorar o segundo, o que pode causar substituições incorretas. Antes de usar a tabela de mapeamento, verifique se há duplicatas na coluna “De” com a função CONT.SE: =CONT.SE($A$2:$A$100; A2) — se o resultado for maior que 1 em qualquer linha, há duplicata e ela precisa ser resolvida antes de aplicar o PROCV.
Converta a tabela de mapeamento em uma Tabela do Excel formal (Ctrl+T) e dê a ela um nome descritivo como “TabelaDePara” ou “Mapeamento” no Gerenciador de Nomes. Ao referenciar o nome da tabela na fórmula do PROCV em vez de um intervalo de células ($A:$B), você garante que quando novas linhas forem adicionadas à tabela de mapeamento, as fórmulas da base de dados automaticamente incluem os novos mapeamentos. Essa é uma diferença prática enorme — com o intervalo fixo, novos mapeamentos adicionados abaixo do último não seriam encontrados pelo PROCV até você expandir manualmente o intervalo.
Aplicando o PROCV como motor do de para
Com a tabela de mapeamento pronta, a fórmula do de para na base de dados usa o PROCV para fazer a busca e a substituição. A sintaxe: =PROCV(valor_a_substituir; TabelaDePara; 2; FALSO). O primeiro argumento é a célula da base de dados que contém o valor original que você quer substituir. O segundo é o nome (ou o intervalo) da tabela de mapeamento. O número 2 indica que o PROCV deve retornar o valor da segunda coluna da tabela (a coluna “Para”). E o FALSO garante que a correspondência seja exata — o valor na base precisa ser idêntico ao valor na coluna “De” da tabela de mapeamento.
Um detalhe crítico para o de para funcionar corretamente: os valores na base de dados precisam ser idênticos aos valores na coluna “De” da tabela de mapeamento, incluindo espaços extras, capitalização e caracteres especiais. “São Paulo” com espaço extra no final é diferente de “São Paulo” sem espaço — o PROCV não vai encontrar a correspondência e retornará o erro #N/D. Antes de aplicar o de para, limpe os dados da base e da tabela de mapeamento com a função ARRUMAR (remove espaços extras do início, do final e espaços duplos no meio): =ARRUMAR(A2). Padronize a capitalização com MAIÚSCULA ou PRI.MAIÚSCULA para eliminar diferenças de caixa. Essa limpeza prévia é o que garante que o de para funciona para todos os registros e não fica com lacunas inexplicáveis.
Para tratar os casos onde o valor não é encontrado na tabela de mapeamento — registros com valores novos que ainda não foram mapeados, erros de digitação ou exceções — use o SEERRO combinado com o PROCV: =SEERRO(PROCV(A2; TabelaDePara; 2; FALSO); A2). Essa versão retorna o próprio valor original (A2) quando o PROCV não encontra correspondência, em vez de exibir o erro #N/D. Isso é muito mais útil em produção porque a coluna de resultados fica com valores em todos os casos — os que foram mapeados com o valor de destino e os que não foram mapeados com o valor original, tornando imediato identificar o que ainda precisa de mapeamento (basta filtrar os valores que são iguais nas duas colunas).
Técnicas avançadas para o de para com PROCV
Quando a tabela de mapeamento tem muitos pares de correspondência e a base de dados é grande, a performance do PROCV pode ser um problema — ele percorre a tabela linha por linha do topo até encontrar a correspondência, o que fica lento com muitas linhas. Para melhorar a performance, ordene a coluna “De” da tabela de mapeamento em ordem crescente e use VERDADEIRO (correspondência aproximada) no quarto argumento do PROCV em vez de FALSO. Com os dados ordenados e o modo aproximado, o PROCV usa um algoritmo de busca binária que é muito mais rápido. Mas cuidado: isso só funciona corretamente quando todos os valores da base de dados existem exatamente na tabela de mapeamento — qualquer valor que não existe na tabela vai receber o mapeamento errado do valor anterior na lista ordenada.
Para de para com correspondência parcial — quando você quer mapear todos os códigos que começam com “PRD” para a categoria “Produto”, independentemente do número que vem depois —, combine o PROCV com a função ESQUERDA para extrair a parte relevante do código antes de buscar na tabela de mapeamento: =PROCV(ESQUERDA(A2;3); TabelaDePara; 2; FALSO). Essa combinação busca apenas os três primeiros caracteres de cada código na tabela de mapeamento, permitindo que a tabela de para funcione com grupos de valores em vez de valores individuais exatos.
Para de para com múltiplas chaves — quando a correspondência é determinada pela combinação de dois ou mais campos (por exemplo, o mapeamento depende tanto do código do produto quanto da região) —, crie uma coluna auxiliar que concatena as duas chaves na base de dados e na tabela de mapeamento: =A2&”-“&B2 na base e o mesmo formato na tabela de mapeamento. O PROCV busca o valor concatenado, garantindo que a correspondência considera todos os campos relevantes. Essa técnica de chave composta expande muito o poder do de para para cenários mais complexos que envolvem múltiplas dimensões de mapeamento.
Validando o resultado do de para antes de usar os dados
Após aplicar o de para, sempre valide o resultado antes de usar os dados mapeados em análises ou relatórios. A validação básica conta quantos registros foram mapeados com sucesso versus quantos ficaram sem correspondência: =CONT.SE(resultado_de_para; “Não mapeado”) para a versão com SEERRO que exibe “Não mapeado” quando não encontra correspondência. Se esse número for maior que zero, você tem registros que precisam de atenção — ou um valor novo que precisa ser adicionado à tabela de mapeamento, ou um erro de digitação na base de dados que precisa ser corrigido.
A comparação entre os valores únicos da base original e os valores únicos da tabela de mapeamento também é uma boa prática de validação. Use a função ÚNICO (Excel 365) para extrair os valores distintos da coluna original da base: =ÚNICO(A:A). Compare essa lista com os valores da coluna “De” da tabela de mapeamento para identificar qualquer valor que existe na base mas não tem correspondência na tabela. Esse mapeamento de lacunas, feito antes de aplicar o de para em produção, evita surpresas com dados não mapeados descobertos depois que os relatórios já foram distribuídos.
Se você curtiu esse artigo onde mostramos como usar o PROCV para fazer de para no Excel em larga escala, compartilhe com as suas redes sociais e não se esqueça de deixar um comentário aqui embaixo caso você tenha ficado com alguma dúvida.