Durante anos, a combinação SEERRO com PROCV foi o padrão ouro para buscas seguras no Excel. Mas o Excel 365 trouxe o PROCX — o sucessor moderno do PROCV — e com ele uma mudança importante no tratamento de erros: o PROCX tem um argumento nativo para o valor quando não encontrado, tornando em muitos casos o SEERRO opcional. Isso não significa que o SEERRO deixou de ser útil, mas muda a forma como combinamos as funções de busca com o tratamento de erros. Neste artigo iremos mostrar como funciona o SEERRO com PROCX no Excel 365, quando você ainda precisa do SEERRO e quando o argumento nativo do PROCX já é suficiente.
O PROCX e o argumento nativo de valor quando não encontrado
A sintaxe completa do PROCX é: =PROCX(valor_procurado; matriz_procurar; matriz_retornar; [se_não_encontrado]; [modo_correspondência]; [modo_pesquisa]). O quarto argumento, se_não_encontrado, é onde o PROCX se diferencia fundamentalmente do PROCV: ele aceita diretamente um valor a retornar quando a busca não encontra correspondência — sem precisar de SEERRO externo. =PROCX(A2;Tabela[Código];Tabela[Nome];”Não encontrado”) retorna “Não encontrado” quando o código de A2 não existe na tabela, exatamente como =SEERRO(PROCV(A2;Tabela;2;FALSO);”Não encontrado”) faria, mas de forma muito mais limpa e com menos aninhamento.
Essa simplificação tem um impacto real na legibilidade das fórmulas. Compare as duas versões da mesma busca. Com PROCV: =SEERRO(PROCV($A2;Produtos!$A:$D;3;FALSO);”Produto não cadastrado”). Com PROCX: =PROCX($A2;Produtos[Código];Produtos[Preço];”Produto não cadastrado”). A versão com PROCX é mais curta, mais descritiva (os argumentos referenciam colunas pelo nome em vez de número de posição) e não requer o aninhamento com SEERRO. Para quem trabalha no Excel 365, migrar gradualmente do padrão SEERRO+PROCV para PROCX com argumento nativo é uma melhoria real de produtividade e manutenibilidade.
No entanto, o PROCX ainda pode precisar do SEERRO em situações específicas. O quarto argumento do PROCX trata apenas o caso de “valor não encontrado”. Outros tipos de erro — #VALOR! por incompatibilidade de tipos, #REF! por referência inválida, ou erros gerados por funções encadeadas dentro dos argumentos do PROCX — não são capturados pelo argumento nativo e precisam do SEERRO externo. Para cobertura completa de todos os tipos de erro, envolva o PROCX com SEERRO da mesma forma que faria com PROCV.
Quando ainda usar SEERRO com PROCX
O SEERRO é necessário com PROCX quando o erro pode vir de outra fonte além do “valor não encontrado”. Por exemplo, se o valor_procurado é resultado de outra fórmula que pode gerar erro: =SEERRO(PROCX(ESQUERDA(A2;5);Tabela[Código];Tabela[Nome];”—”);”Erro no formato do código”). O SEERRO externo captura erros na função ESQUERDA(A2;5) — se A2 estiver vazia ou não for texto, ESQUERDA pode gerar #VALOR!, que o argumento nativo do PROCX não capturaria. O SEERRO adiciona uma camada de proteção que o PROCX sozinho não oferece.
Outro caso onde o SEERRO com PROCX é útil é quando o valor_se_erro varia dependendo de condições dinâmicas — por exemplo, quando a mensagem de erro precisa incluir informações do próprio registro: =SEERRO(PROCX(A2;Tabela[Código];Tabela[Nome];”Código “&A2&” não cadastrado”);”Código inválido — verifique o formato”). Aqui o argumento nativo do PROCX inclui o código não encontrado na mensagem de erro (concatenação com A2), mas o SEERRO externo trata qualquer outro erro com uma mensagem diferente. Essa combinação dá máxima flexibilidade no tratamento de diferentes situações de erro.
Para planilhas que precisam funcionar tanto no Excel 365 quanto em versões anteriores (2016, 2019), o PROCX não está disponível e você precisa manter o padrão SEERRO+PROCV. Antes de migrar para PROCX, verifique se todos os usuários da planilha têm acesso ao Excel 365. Em ambientes corporativos onde diferentes usuários têm versões diferentes do Excel, o PROCV com SEERRO ainda é a escolha mais segura para compatibilidade universal.
Vantagens do PROCX sobre o PROCV além do tratamento de erros
A simplificação do tratamento de erros é apenas uma das vantagens do PROCX sobre o PROCV. O PROCX também resolve as principais limitações estruturais do PROCV. A busca pode ser feita em qualquer coluna (não apenas na primeira), e o retorno pode ser de qualquer coluna à esquerda ou à direita da coluna de busca. Por exemplo, buscar pelo nome e retornar o código (que está à esquerda do nome) é impossível com PROCV mas trivial com PROCX: =PROCX(A2;Tabela[Nome];Tabela[Código];”Não encontrado”).
O PROCX também elimina o problema clássico do PROCV com números de coluna fixos. Quando você insere ou remove uma coluna na tabela de referência, o terceiro argumento do PROCV (o número da coluna de retorno) fica desatualizado e retorna dados incorretos sem nenhum aviso de erro. O PROCX referencia a coluna de retorno diretamente pelo intervalo ou nome, não por posição — se a coluna é movida, o PROCX acompanha automaticamente. Essa robustez estrutural do PROCX, combinada com o tratamento nativo de erros, o torna muito mais adequado para planilhas complexas e de longa manutenção.
O PROCX também busca por padrão no modo de correspondência exata (como PROCV com FALSO), mas tem modos adicionais: correspondência aproximada inferior, correspondência aproximada superior e correspondência com curingas — tudo no mesmo quinto argumento. E o sexto argumento permite busca reversa (do último para o primeiro), algo que o PROCV simplesmente não suporta. Com SEERRO quando necessário para cobertura extra, o PROCX com todos esses recursos se torna a função de busca mais completa e versátil do Excel.
Migrando de SEERRO+PROCV para PROCX: um guia prático
Para migrar fórmulas existentes de SEERRO+PROCV para PROCX, o mapeamento é direto. =SEERRO(PROCV(A2;$C:$F;2;FALSO);”Não encontrado”) se torna =PROCX(A2;$C:$C;$D:$D;”Não encontrado”). Note que o PROCX separa a coluna de busca (terceiro argumento do PROCV, primeiro intervalo do range C:F) da coluna de retorno (segunda coluna de C:F, que é D). O que era implícito no número de coluna do PROCV fica explícito no PROCX.
Para a migração em massa de uma planilha com muitos PROCVs, use o Localizar e Substituir (Ctrl+H) com cuidado: localize “=SEERRO(PROCV(” mas substitua manualmente cada ocorrência revisando o argumento de coluna para garantir que o PROCX referencia a coluna correta. Não faça substituição automática em massa de PROCV para PROCX sem revisar cada fórmula, pois o número de coluna do PROCV precisa ser convertido para uma referência de coluna específica no PROCX.
Se você curtiu esse artigo onde mostramos como usar SEERRO com PROCX no Excel 365 e quando a combinação ainda é necessária, 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.