Funcións BUSCAR e BUSCAR de Excel con exemplos de fórmulas

  • Comparte Isto
Michael Brown

O titorial explica a sintaxe das funcións BUSCAR e BUSCAR de Excel e ofrece exemplos de fórmulas de usos avanzados non triviais.

No último artigo, tratamos os conceptos básicos de Excel. Cadro de diálogo Buscar e substituír. En moitas situacións, non obstante, pode querer que Excel busque e extraia datos doutras celas automaticamente segundo os seus criterios. Entón, vexamos máis de cerca o que ofrecen as funcións de busca de Excel.

    Función BUSCAR de Excel

    A función BUSCAR en Excel úsase para devolver a posición de un carácter ou subcadea específicos dentro dunha cadea de texto.

    A sintaxe da función Find de Excel é a seguinte:

    FIND(buscar_texto, dentro_texto, [núm_inicio])

    Os 2 primeiros argumentos son necesarios, o último é opcional.

    • Buscar_texto : o carácter ou subcadea que quere atopar.
    • Dentro_de_texto : a cadea de texto para ser buscado dentro. Normalmente ofrécese como referencia de cela, pero tamén pode escribir a cadea directamente na fórmula.
    • Núm_inicio - un argumento opcional que especifica a partir de que carácter comezará a busca. Se se omite, a busca comeza a partir do primeiro carácter da cadea dentro_texto.

    Se a función FIND non atopa o(s) carácter(s) find_text, un #VALOR! devólvese un erro.

    Por exemplo, a fórmula =FIND("d", "find") devolve 4 porque "d" é a cuarta letra da palabra " atopar ". Fórmula =FIND("a", "find") de novo, a parte máis complexa é o último argumento que indica á fórmula cantos caracteres devolver. Esa expresión bastante longa no argumento num_chars fai o seguinte:

    • Primeiro, atopa a posición do paréntese de peche: SEARCH(")",A2)
    • Despois localiza a posición do paréntese de apertura: SEARCH("(",A2)
    • E despois, calcula a diferenza entre as posicións dos parénteses de peche e de apertura e resta 1 a ese número, porque non queres nin parénteses no resultado: SEARCH(")",A2)-SEARCH("(",A2))-1

    Naturalmente, nada impide que utilices a función BUSCAR de Excel en lugar de BUSCAR, porque a distinción entre maiúsculas e minúsculas non fai diferenza neste exemplo.

    Con sorte, isto o tutorial arroxou algo de luz sobre como usar as funcións BUSCAR e BUSCAR en Excel. No seguinte titorial, imos examinar de cerca a función REPLACE, así que estade atentos. Grazas por ler!

    Descargar o libro de prácticas

    BUSCAR e BUSCAR exemplos de fórmulas

    devolve un erro porque non hai "a" en " find".

    Función de Excel FIND: cousas para recordar!

    Para usar correctamente unha fórmula FIND en Excel, teña en conta os seguintes feitos sinxelos:

    1. A función FIND é distingue entre maiúsculas e minúsculas . Se está a buscar unha coincidencia que non distinga entre maiúsculas e minúsculas, use a función BUSCAR.
    2. A función BUSCAR en Excel non permite usar caracteres comodíns .
    3. Se o argumento find_text contén varios caracteres, a función FIND devolve a posición do primeiro carácter . Por exemplo, a fórmula FIND("ap","feliz") devolve 2 porque "a" na segunda letra da palabra "feliz".
    4. Se dentro_texto contén varias ocorrencias de find_text, devólvese a primeira aparición. Por exemplo, FIND("l", "ola") devolve 3, que é a posición do primeiro carácter "l" na palabra "ola".
    5. Se find_text é unha cadea baleira "", a fórmula de Excel FIND devolve o primeiro carácter da cadea de busca.
    6. A función de Excel FIND devolve o #VALOR! erro se ocorre algún dos seguintes casos:
      • Buscar_texto non existe en_texto.
      • Número_inicio contén máis caracteres que dentro_texto.
      • Número_inicio é 0 (cero) ou un número negativo.

    Función de BUSCA de Excel

    A función de BUSCA en Excel é moi semellante a BUSCAR, xa que tamén devolve a localización dunha subcadea nunha textocorda. A sintaxe e os argumentos son semellantes aos de FIND:

    SEARCH(find_text, within_text, [start_num])

    A diferenza de FIND, a función SEARCH é insensible entre maiúsculas e minúsculas e permite usar os caracteres comodíns , como se demostra no seguinte exemplo.

    E aquí tes un par de fórmulas básicas de BUSCA de Excel:

    =SEARCH("market", "supermarket") devolve 6 porque a subcadea "mercado" comeza no sexto carácter da palabra "supermercado" .

    =SEARCH("e", "Excel") devolve 1 porque "e" é o primeiro carácter da palabra "Excel", ignorando as maiúsculas e minúsculas.

    Como BUSCAR, a función BUSCAR de Excel devolve o #VALOR! erro se:

    • Non se atopa o valor do argumento find_text.
    • O argumento start_num é maior que a lonxitude de dentro_texto.
    • Start_num é igual a ou menos que cero.

    Ademais neste tutorial, atoparás algúns exemplos de fórmulas máis significativos que demostran como usar a función BUSCA nas follas de cálculo de Excel.

    Como xa se mencionou, as funcións BUSCAR e BUSCAR en Excel son moi similares en canto a sintaxe e usos. Porén, teñen un par de diferenzas.

    1. BUSCA que distingue entre maiúsculas e minúsculas e BUSCA que non distingue entre maiúsculas e minúsculas

    A diferenza máis esencial entre as funcións BUSCA e BUSCAR de Excel é que a BUSCA non distingue entre maiúsculas e minúsculas, mentres que BUSCAR distingue entre maiúsculas e minúsculas.

    Por exemplo. , SEARCH("e", "Excel") devolve 1 porque ignora ocaso de "E", mentres que FIND("e", "Excel") devolve 4 porque lle importa o caso.

    2. Busca con caracteres comodín

    A diferenza de BUSCAR, a función BUSCA de Excel acepta caracteres comodín no argumento find_text:

    • Un signo de interrogación (?) coincide cun carácter e
    • Un asterisco (*) coincide con calquera serie de caracteres.

    Para ver como funciona en datos reais, considere o seguinte exemplo:

    Como ves na captura de pantalla anterior, a fórmula SEARCH("función*2013", A2) devolve a posición do primeiro carácter ("f") na subcadea se a cadea de texto á que se refire o argumento dentro_texto contén tanto "función" e "2013", non importa cantos outros personaxes haxa no medio.

    Consello. Para atopar un signo de interrogación real (?) ou asterisco (*), escriba unha tilde (~) antes do carácter correspondente.

    Exemplos de fórmulas BUSCAR e BUSCAR de Excel

    Na práctica, as funcións BUSCAR e BUSCAR de Excel raramente se usan por si soas. Normalmente, utilizaríaas en combinación con outras funcións como MID, LEFT ou RIGHT, e os seguintes exemplos de fórmulas mostran algúns usos da vida real.

    Exemplo 1. Busca unha cadea que precede ou segue a un determinado carácter

    Este exemplo mostra como pode buscar e extraer todos os caracteres dunha cadea de texto á esquerda ou á dereita dun carácter específico. Para facer as cousas máis fáciles de entender, ten en conta oseguinte exemplo.

    Supoño que tes unha columna de nomes (columna A) e queres agrupar o Nome e o Apelido en columnas separadas.

    Para obter o nome, podes usar BUSCAR (ou BUSCAR) xunto coa función ESQUERDA:

    =LEFT(A2, FIND(" ", A2)-1)

    ou

    =LEFT(A2, SEARCH(" ", A2)-1)

    Como probablemente sabe, a función ESQUERDA de Excel devolve o número especificado de caracteres máis á esquerda nunha cadea. E usa a función FIND para determinar a posición dun espazo (" ") para que a función LEFT saiba cantos caracteres extraer. Nese momento, resta 1 da posición do espazo porque non queres que o valor devolto inclúa o espazo.

    Para extraer o apelido, utiliza a combinación das funcións DEREITA, BUSCAR/BUSCAR e LEN. A función LEN é necesaria para obter o número total de caracteres da cadea, dos que resta a posición do espazo:

    =RIGHT(A2,LEN(A2)-FIND(" ",A2))

    ou

    =RIGHT(A2,LEN(A2)-SEARCH(" ",A2))

    A seguinte captura de pantalla mostra o resultado:

    Para escenarios máis complexos, como extraer un segundo nome ou dividir nomes con sufixos, consulte Como dividir celas en Excel usando fórmulas.

    Exemplo 2. Busca a enésima aparición dun determinado carácter nunha cadea de texto

    Supoño que tes algunhas cadeas de texto na columna A, digamos unha lista de SKU e queres buscar a posición do 2o guión nunha cadea. A seguinte fórmula funciona como unha delicia:

    =FIND("-", A2, FIND("-",A2)+1)

    Os dous primeirosos argumentos son fáciles de interpretar: localiza un guión ("-") na cela A2. No terceiro argumento (núm_inicio), incrusta outra función FIND que lle indica a Excel que comece a buscar comezando polo carácter que aparece inmediatamente despois da primeira aparición do guión (FIND("-",A2)+1).

    Para devolver a posición da 3ª ocorrencia , incrusta a fórmula anterior no argumento start_num doutra función FIND e engade 2 ao valor devolto:

    =FIND("-",A2, FIND("-", A2, FIND("-",A2)+1) +2)

    Outra forma máis sinxela de atopar a enésima aparición dun determinado carácter é usar a función BUSCAR de Excel en combinación con CHAR e SUBSTITUTE:

    =FIND(CHAR(1),SUBSTITUTE(A2,"-",CHAR(1),3))

    Onde "-" é o carácter en cuestión e "3" é a enésima aparición que quere atopar.

    Na fórmula anterior, a función SUBSTITUTE substitúe a terceira aparición de guión ("-") por CHAR( 1), que é o carácter non imprimible "Inicio do título" no sistema ASCII. En lugar de CHAR(1), pode usar calquera outro carácter non imprimible do 1 ao 31. E despois, a función FIND devolve a posición dese carácter na cadea de texto. Entón, a fórmula xeral é a seguinte:

    FIND(CHAR(1),SUBSTITUTE( celda , carácter ,CHAR(1), Enésima aparición ))

    A primeira vista, pode parecer que as fórmulas anteriores teñen pouco valor práctico, pero o seguinte exemplo mostrará o útil que son para resolver tarefas reais.

    Nota. Lembra que o Excel FINDA función distingue entre maiúsculas e minúsculas. No noso exemplo, isto non fai ningunha diferenza, pero se está a traballar con letras e quere unha coincidencia insensible entre maiúsculas e minúsculas , use a función BUSCAR en lugar de BUSCAR.

    Exemplo 3. Extrae N caracteres despois dun determinado carácter

    Para localizar unha subcadea dunha determinada lonxitude dentro de calquera cadea de texto, utiliza Excel FIND ou Excel SEARCH en combinación coa función MID. O seguinte exemplo mostra como pode usar esas fórmulas na práctica.

    Na nosa lista de SKU, supoñendo que quere atopar os 3 primeiros caracteres que seguen o primeiro guión e tiralos noutra columna.

    Se o grupo de caracteres que precede ao primeiro guión sempre contén o mesmo número de elementos (por exemplo, 2 caracteres), esta sería unha tarefa trivial. Podes usar a función MID para devolver 3 caracteres dunha cadea, comezando na posición 4 (omitindo os 2 primeiros caracteres e un guión):

    =MID(A2, 4, 3)

    Traducido ao inglés, a fórmula di: "Mira na cela A2, comeza a extraer do carácter 4 e devolve 3 caracteres".

    Non obstante, nas follas de traballo da vida real, a subcadea que necesitas extraer pode comezar en calquera lugar. dentro da cadea de texto. No noso exemplo, quizais non saibas cantos caracteres preceden ao primeiro guión. Para facer fronte a este desafío, use a función FIND para determinar o punto de inicio da subcadea que quere recuperar.

    A fórmula FIND para devolver oA posición do primeiro trazo é a seguinte:

    =FIND("-",A2)

    Como quere comezar co carácter que segue ao trazo, engade 1 ao valor devolto e incruste a función anterior no segundo argumento. (núm_inicio) da función MID:

    =MID(A2, FIND("-",A2)+1, 3)

    Neste escenario, a función BUSCA de Excel funciona igual de ben:

    =MID(A2, SEARCH("-",A2)+1, 3)

    É xenial, pero e se o grupo de caracteres que segue ao primeiro trazo contén un número diferente de caracteres? Hmm... isto pode ser un problema:

    Como ves na captura de pantalla anterior, a fórmula funciona perfectamente para as filas 1 e 2. Nas filas 4 e 5, o o segundo grupo contén 4 caracteres, pero só se devolven os 3 primeiros. Nas filas 6 e 7, só hai 2 caracteres no segundo grupo e, polo tanto, a nosa fórmula de busca de Excel devolve un guión despois deles.

    Se queres devolver todos os caracteres entre a 1a e a 2a aparición. dun determinado carácter (guión neste exemplo), como procederías? Aquí está a resposta:

    =MID(A2, FIND("-",A2)+1, FIND("-", A2, FIND("-",A2)+1) - FIND("-",A2)-1)

    Para unha mellor comprensión desta fórmula MID, examinemos os seus argumentos un por un:

    • 1o argumento (texto). É a cadea de texto que contén os caracteres que quere extraer, a cela A2 neste exemplo.
    • 2o argumento (posición_inicio). Especifica a posición do primeiro carácter que quere extraer. Usa a función FIND para localizar o primeiro guión na cadea e engadir 1 aese valor porque quere comezar co carácter que segue ao guión: FIND("-",A2)+1.
    • 3o argumento (num_chars). Especifica o número de caracteres que quere devolver. Na nosa fórmula, esta é a parte máis complicada. Usa dúas funcións FIND (ou SEARCH), unha determina a posición do primeiro guión: FIND("-",A2). E o outro devolve a posición do segundo guión: FIND("-", A2, FIND("-",A2)+1). Despois resta o primeiro do segundo e despois resta 1 porque non queres incluír ningún guión. Como resultado, obterás o número de caracteres entre o 1o e o 2o guión, que é exactamente o que buscamos. Entón, alimenta ese valor ao argumento num_chars da función MID.

    De forma similar, podes devolver 3 caracteres despois do segundo guión:

    =MID(A2, FIND("-",A2, FIND("-", A2, FIND("-",A2)+1) +2), 3)

    Ou, extrae todos os caracteres entre o segundo e o terceiro guións:

    =MID(A2, FIND("-", A2, FIND("-",A2)+1)+1, FIND("-",A2, FIND("-", A2, FIND("-",A2)+1) +2) - FIND("-", A2, FIND("-",A2)+1)-1)

    Exemplo 4. Busca texto entre parénteses

    Supondo que tes algunha cadea de texto longa na columna A e queres buscar e extraer só o texto incluído entre (parénteses).

    Para facelo, necesitarías a función MID para devolver o número desexado de caracteres de unha cadea e a función BUSCAR ou BUSCAR de Excel para determinar onde comezar e cantos caracteres extraer.

    =MID(A2,SEARCH("(",A2)+1, SEARCH(")",A2)-SEARCH("(",A2)-1)

    A lóxica desta fórmula é semellante á que comentamos no anterior exemplo. E

    Michael Brown é un entusiasta da tecnoloxía dedicada á súa paixón por simplificar procesos complexos mediante ferramentas de software. Con máis dunha década de experiencia na industria tecnolóxica, perfeccionou as súas habilidades en Microsoft Excel e Outlook, así como en Follas de cálculo e Documentos de Google. O blog de Michael está dedicado a compartir o seu coñecemento e experiencia con outros, proporcionando consellos e titoriais fáciles de seguir para mellorar a produtividade e a eficiencia. Tanto se es un profesional experimentado como un principiante, o blog de Michael ofrece valiosas ideas e consellos prácticos para sacar o máximo proveito destas ferramentas de software esenciais.