Edu Tognon

A função PROCX se enquadra entre as funções de pesquisa do Excel, ou seja, com ela podemos realizar a busca de um dado tomando outro como correspondente, assim como ocorre com as famosas funções PROCV e PROCH. No entanto, ela é muito mais dinâmica e completa que suas antecessoras. 

Neste artigo vamos aprender a sintaxe padrão da função PROCX e também seus argumentos opcionais: mensagens personalizadas, correspondência de valores e ordem de pesquisa.

Versão em vídeo

Versão do Excel utilizada na aula: Microsoft Excel 365 [versão 2303]

Download dos arquivos

Você pode baixar os arquivos utilizados no tutorial em vídeo. O arquivo inicial refere-se ao arquivo sem as modificações, ideal para praticar o passo a passo e treinar suas habilidades. O arquivo pronto é o arquivo final, com todas as modificações ensinadas já aplicadas, ideal se você já quiser ter em mãos o resultado. 

Para baixar os arquivos, acesse a página de download e clique no botão Baixar

Inscreva-se para receber novos arquivos, aulas, artigos e dicas por e-mail! 

Ao se cadastrar, você aceita nossos Termos de Uso e Serviço e nossa Política de Privacidade.

Versão em texto / ilustrada

Versão do Excel utilizada neste tutorial: Microsoft Excel 365 [versão 2303]

PROCX comum

O modo mais usual de se usar a PROCX é basicamente fornecendo o item a ser pesquisado, a matriz onde ele se encontra e a matriz que contém o dado correspondente a ser retornado. 

No exemplo abaixo temos uma planilha contendo o cadastro de alguns produtos, data, status e responsável pela inserção dos dados. Ao lado, faremos uma pesquisa pelo código e o Excel nos trará a data de cadastro e o status. 

Planilha com dados a serem buscados por PROCX

Vamos começar pelo retorno da data de cadastro. Em H6, vamos inserir a seguinte fórmula: 

=PROCX(H4;A:A;C:C

H4 refere-se ao termo de pesquisa, ou seja, a célula que contém o termo a ser pesquisado (em nosso caso, o código do produto). A:A refere-se à matriz de pesquisa, ou seja, o local onde se encontram os dados que devem ser pesquisados a partir do item inserido em A4. Como estamos realizando a busca a partir do código, nossa matriz de pesquisa é justamente a coluna que contém esses códigos, ou seja, a coluna A (por isso a notação A:A). Você pode também selecionar um intervalo específico, não necessariamente uma coluna completa. Já C:C refere-se ao intervalo que contém nossa matriz de retorno, ou seja, onde estão os dados que devem ser retornados, de acordo com a correspondência que eles fazem com os códigos. 

PROCX retornando a data de cadastro através do código

Na mesma linha em que se encontra o código procurado, o Excel retornou a data correspondente. 

Para a busca do status, o único argumento a ser alterado é a matriz de retorno, que agora é a coluna E: 

=PROCX(H4;A:A;E:E) 

Resultados da PROCX

PROCX com argumento "se não encontrada"

Um dos argumentos não obrigatórios da função PROCX é o “se não encontrada“. Ele nos permite definir uma ação caso o termo pesquisado não seja encontrado na matriz de pesquisa. Podemos realizar uma referência, uma operação, inserir uma função ou mesmo um texto de aviso, que é o que faremos neste exemplo. 

Observe a ordem de argumentos da função. Depois dos argumentos obrigatórios, “se_não_encontrada” é o primeiro dos opcionais, portanto você precisa respeitar essa ordem caso queira utilizar os demais argumentos. 

Usando a mesma planilha anterior, vamos inserir uma mensagem caso o item pesquisado não seja encontrado. Nossa sintaxe ficaria assim: 

=PROCX(K4;B:B;C:C;”Não encontrado”) – para o cadastro 

=PROCX(K4;B:B;A:A;”Não encontrado”) – para o código do produto 

Resultados da PROCX no segundo exemplo

Se o termo pesquisado não for localizado, a mensagem é exibida. 

PROCX com o argumento se_não_encontrada

PROCX no modo correspondência

O modo correspondência também é um argumento não obrigatório da função PROCX. Ele pode ser muito útil quando temos uma classificação baseada em uma faixa de valores e queremos o retorno dessa classificação. Basicamente, aqui a PROCX não terá sua função habitual de buscar dados exatos, mas sim de encaixar um determinado valor em uma categoria e retornar, como resultado, propriamente a categoria. 

Exemplo de uso da PROCX no modo correspondência

Na planilha acima, nosso termo de busca foi “LOJA 10”, de modo que o Excel retornou, através de uma PROCX comum, o resultado de vendas dessa loja. Já o resultado “REGULAR” é uma PROCX que analisa o valor das vendas e busca a faixa onde esse valor se encontra para retornar um termo correspondente. Para tal, devemos ter uma lista com essas categorias, como essa abaixo. 

Parâmetros para a PROCX no modo correspondência

Se o valor das vendas não chegar a R$ 25.000,00, a PROCX retornará o termo “PÉSSIMO”. Se o resultado for de R$ 25.000,00 em diante mas não chegar a R$ 40.000,00, o termo a ser retornado é “RUIM”. E assim a lógica segue de forma sucessiva, até o termo “ÓTIMO” para valores de R$ 75.000,00 em diante. 

Vamos colocar isso em prática. A sintaxe para a busca dos valores é a habitual, que já vimos no primeiro tópico deste artigo. Ela busca a loja (E4) dentro da matriz onde estão as lojas (A:A) e retorna seus respectivos valores contidos na coluna B (B:B). 

=PROCX(E4;A:A;B:B) 

Já a sintaxe do modo correspondência fica um pouco diferente. 

=PROCX(E6;H4:H8;G4:G8;;-1

E6 é o termo de busca (justamente o valor das vendas, já retornado pela PROCX anterior). H4:H8 refere-se à matriz de pesquisa, ou seja, os valores que devem ser vasculhados. G4:G8 é a matriz de retorno, a matriz que contém os termos a serem retornados de acordo com os valores correspondentes na coluna H. 

O próximo argumento é o “se_não_encontrada”, mas, nesse exemplo, não faremos uso dele, portanto basta digitar um ponto e vírgula para que a sintaxe “pule” para o argumento seguinte, que é justamente o modo correspondência. 

Argumentos da PROCX com o modo correspondência em destaque
Opções do modo correspondência

Nesse modo o Excel traz quatro opções. A correspondência exata (representada pelo número 0) faz justamente o que a versão comum da PROCX faz: buscar um dado exatamente como digitado. No nosso caso, as categorias a serem retornadas obedecem a um critério simples: maior ou igual. Por exemplo, para que o termo “REGULAR” apareça, o valor em vendas precisa ser maior ou igual a R$ 40.000,00. Essa lógica se adequa à opção Correspondência exata ou próximo item menor, representada pelo número -1. Se o resultado de vendas for R$ 65.000,00, o Excel retorna a categoria do próximo item menor da lista, ou seja, R$ 60.000,00. 

Valor correspondente à faixa

PROCX no modo pesquisa

O modo pesquisa se distingue basicamente pela propriedade de se realizar buscas mesmo em meio a valores repetidos. Com esse argumento, é possível indicar ao Excel se o resultado a ser retornado deve ser o primeiro ou o último encontrado na matriz de dados. 

No exemplo abaixo, observe que a seção “PRINCIPAL” está presente em diversas células, mas o Excel buscou os resultados referentes apenas à última vez em que o termo aparece na matriz. 

Exemplo de PROCX no modo pesquisa

Vamos então à sintaxe: 

=PROCX(F4;B:B;C:C;;;-1

Ordem do modo pesquisa nos argumentos da PROCX

F4 é, como habitualmente, nosso termo de busca. B:B refere-se à coluna B completa, ou seja, a matriz onde deve ser procurado o termo inserido em F4. C:C refere-se à coluna C, que é justamente a coluna de quantidade, já que esse é o primeiro dado que desejamos obter. Devemos seguir a ordem dos argumentos opcionais, inserindo um ponto e vírgula para cada argumento não usado, até que consigamos acessar o argumento modo_pesquisa

Argumentos do modo pesquisa

Aqui novamente devemos usar um número que se encaixe na lógica adequada. Por enquanto, vamos ignorar a pesquisa binária e nos atentar apenas às duas primeiras opções. O entendimento é bem simples: 1 para pesquisar do primeiro ao último (de modo que o primeiro resultado encontrado será o resultado exibido) ou -1 para pesquisar do último ao primeiro (de modo que o último resultado da matriz será o resultado exibido). 

Em nosso caso, como a intenção é procurar pelo último registro da lista, optamos por -1

A sintaxe para a data é a mesma. A diferença está na alteração da coluna de retorno, que agora é a coluna A. 

=PROCX(F4;B:B;A:A;;;-1) 

Aprenda o que quiser. Milhares de cursos incríveis para escolher.

Dicas e informações complementares

  • A função PROCX não é compatível com algumas versões mais antigas do Excel, portanto pode não ser uma boa opção de uso caso você compartilhe frequentemente suas planilhas com usuários que não tenham acesso à versão mais recente do pacote Office
  • Uma alternativa para a aplicação comum da função PROCX é o uso combinado das funções ÍNDICE e CORRESP, que você pode conferir neste artigo
  • Você pode usar mais de um argumento opcional na mesma função.