Baixe a apostila de exemplo
Este Tutorial do Excel demonstra como usar o Função Excel MATCH no Excel para encontrar um valor, com exemplos de fórmulas.
Visão geral da função MATCH
A função MATCH procura um item em uma lista e retorna um número que representa sua posição na lista.
(Observe como a fórmula de entrada aparece)
Sintaxe e argumento da função de correspondência
1 | = MATCH (lookup_value, lookup_array, match_type) |
lookup_value - O valor que você deseja pesquisar.
lookup_array - Uma matriz de dados com uma coluna de largura ou uma linha de altura que você deseja pesquisar.
tipo de partida - 0, -1 ou 1 especifica o que fazer se uma correspondência exata não for encontrada. 0 retorna um erro. -1 retorna a correspondência mais próxima que é maior do que lookup_value. 1 retorna a correspondência mais próxima que é menor que lookup_value.
Qual é a função MATCH?
Em termos simples, a função MATCH pode pesquisar um intervalo / array de itens e retornar a posição relativa da palavra pesquisada. É frequentemente usado em conjunto com a função INDEX, uma vez que INDEX precisa de uma posição relativa para retornar um resultado.
Combinação exata
Freqüentemente, você encontrará grandes listas de dados e precisará ser capaz de pesquisar um item específico. Usaremos um pequeno exemplo com algumas frutas. Primeiro, vamos procurar uma correspondência exata. Aqui está o layout de nossos dados. Queremos pesquisar a palavra na célula D1.
Em D2, nossa fórmula é:
1 | = CORRESPONDÊNCIA (D1, A2: A5, 0) |
Observe que precisamos especificar 0 ou False como o último argumento para indicar que queremos um exato partida. O resultado desta função é 2, porque “Apple” é o 2WL item em nossa gama.
Lista ordenada
Vamos ver como a função MATCH funciona com uma correspondência não exata. Aqui temos uma lista de itens. NOTA: Os itens foram classificados em ordem crescente.
Em D1, dissemos que queremos procurar a palavra “laranja”. A fórmula em D2 é
1 | = CORRESPONDÊNCIA (D1, A2: A5, 1) |
Nossa fórmula dá um resultado de 2, embora "Suco de Laranja" esteja no 3rd célula. Como estávamos procurando uma correspondência mais próxima, a função encontrará nossa palavra exata, ou o próximo item menor. Com strings de texto, esta é a palavra imediatamente anterior a “Suco de laranja” e, portanto, obtivemos o resultado 2.
Essa capacidade de localizar o próximo menor pode ser mais fácil de entender usando uma pesquisa numérica. Considere este layout, onde listamos apenas os itens por 10. Se pesquisarmos um valor de 34 usando nossa fórmula, você pode ver que o resultado é 3.
1 | = CORRESPONDÊNCIA (D1, A2: A5, 1) |
Isso pode funcionar bem quando você está lidando com “baldes” e deseja apenas descobrir a qual grupo um valor pertence.
Lista decrescente
Em nosso exemplo anterior, e se você quisesse que o valor 34 fosse colocado no grupo maior? Em nosso próximo exemplo, digamos que temos uma lista de contêineres de transporte de tamanhos diferentes e precisamos saber qual usar. Como precisamos ter certeza de que temos espaço suficiente ou mais, usaremos a função MATCH com o último argumento definido como -1. Vejamos este exemplo:
Nesse caso, precisamos descobrir qual recipiente se ajusta ao nosso tamanho de 495. A fórmula em D2 é:
1 | = CORRESPONDÊNCIA (D1, A1: A5, -1) |
O resultado desta fórmula é 2, indicando que precisamos usar o 2WL item da lista (os 500) para atender às nossas necessidades.
Correspondência de curinga
A função MATCH também suporta o uso de curingas como “*” e “?”. Vamos voltar para nossa lista de vários itens alimentares. Nesse caso, alteramos nosso termo de pesquisa em D1 para “Laranja *”.
Nossa fórmula em D2 é:
1 | = CORRESPONDÊNCIA (D1, A1: A5, 0) |
Observe que precisamos mudar o tipo MATCH de volta para exato partida. Mesmo que os itens estejam misturados e nosso termo de pesquisa não tenha a correspondência de texto completo, nossa fórmula foi capaz de fornecer o resultado correto de 3.
Usando MATCH com INDEX
Retornar a posição relativa de um item é bom, mas geralmente não é tão útil para usuários humanos. Normalmente queremos saber o valor correspondente para um item. É aqui que o INDEX pode entrar em cena. Como INDEX precisa de uma posição numérica para linha e / ou coluna, podemos usar a função MATCH para informar ao INDEX qual item queremos. Considere o seguinte layout, onde precisamos ser capazes de consultar os preços de nossos itens.
Estamos procurando por “Apple”. Em E2, nossa fórmula é
1 | = ÍNDICE (A2: A5, CORRESPONDÊNCIA (E1, B2: B5, 0)) |
A função MATCH irá pesquisar B2: B5 por nossa frase exata, “Apple”. Ele vai encontrar isso no 2WL item e retorna o valor de 2. O INDEX então pega isso e nos dará o 2WL valor do intervalo A2: A5. O 2WL o item está na célula A3, $ 2,00. Isso é discutido mais em
Correspondência no Planilhas Google
A função MATCH funciona exatamente da mesma forma no Planilhas Google e no Excel:
<
Notas Adicionais
Use a função MATCH para encontrar a posição numérica de um valor dentro de uma faixa de valores. O intervalo deve ser um subconjunto de um único intervalo ou uma única linha.
A função MATCH é usada com mais freqüência com a função INDEX.
Exemplos MATCH em VBA
Você também pode usar a função MATCH no VBA. Modelo:
1 | application.worksheetfunction.match (lookup_value, lookup_array, match_type) |
Para os argumentos da função (lookup_value, etc.), você pode inseri-los diretamente na função ou definir as variáveis a serem usadas.
Supondo que temos os seguintes valores em nossa planilha Excel
executando o seguinte código
123 | Dim Match_Value As VariantMatch_Value = Application.WorksheetFunction.Match ("test1", Range ("A4: A13"), 1)MsgBox ("Match was found at row" & Max_Value) |
Retornará o seguinte
1 | A correspondência foi encontrada na linha 9 |
porque a string “test1” é o nono elemento no intervalo de valores a ser pesquisado.
Também podemos pesquisar conteúdo em nossa planilha em vez de inserir valores diretamente no código VBA: A instrução a seguir pesquisará na Coluna A o valor inserido na célula C3
1 | Match_Value = Application.Match (Células (3, 3) .Value, Colunas (1), 0) |
Voltar para a lista de todas as funções no Excel