Формула мысалдары бар Excel FIND және SEARCH функциялары

  • Мұны Бөлісіңіз
Michael Brown

Оқулық Excel FIND және SEARCH функцияларының синтаксисін түсіндіреді және кеңейтілген тривиальды емес қолданудың формула мысалдарын береді.

Соңғы мақалада Excel негіздерін қарастырдық. Табу және ауыстыру диалогтық терезесі. Дегенмен, көптеген жағдайларда Excel бағдарламасының критерийлер негізінде басқа ұяшықтардан деректерді автоматты түрде тауып алуын қалауыңыз мүмкін. Сонымен, Excel іздеу функцияларының не ұсынатынын егжей-тегжейлі қарастырайық.

    Excel FIND функциясы

    Excel бағдарламасындағы FIND функциясы файлдың орнын қайтару үшін пайдаланылады. мәтін жолындағы белгілі бір таңба немесе ішкі жол.

    Excel Find функциясының синтаксисі төмендегідей:

    ТАБУ(мәтінді_табу, мәтін ішінде, [бастапқы_сан])

    Алғашқы 2 аргумент қажет, соңғысы міндетті емес.

    • Табу_мәтінді - тапқыңыз келетін таңба немесе ішкі жол.
    • Мәтіннің_ішінде - мәтін жолы ішінде іздеу керек. Әдетте ол ұяшық сілтемесі ретінде беріледі, бірақ жолды формулада тікелей теруге болады.
    • Бастау_нөмірі - іздеу қай таңбадан басталатынын көрсететін қосымша аргумент. Өткізілмесе, іздеу мәтін ішіндегі жолдың 1-таңбасынан басталады.

    Егер FIND функциясы табу_мәтін таңба(лар)ын таппаса, #VALUE! қате қайтарылды.

    Мысалы, =FIND("d", "find") формуласы 4 мәнін береді, себебі «d» « табу » сөзіндегі 4-ші әріп. Формула =FIND("a", "find") тағы да, ең күрделі бөлігі - формулаға қанша таңбаны қайтару керектігін айтатын соңғы аргумент. Таңбалар_саны аргументіндегі бұл өте ұзын өрнек келесі әрекеттерді орындайды:

    • Біріншіден, сіз жабу жақшасының орнын табасыз: SEARCH(")",A2)
    • Одан кейін ашылатын жақшаның орнын табасыз: SEARCH("(",A2)
    • Сосын, сіз жабу және ашу жақшаларының орындары арасындағы айырмашылықты есептеп, сол саннан 1-ді шегеріңіз, өйткені нәтижеде жақшаның екеуі де қажет емес: SEARCH(")",A2)-SEARCH("(",A2))-1

    Әрине, ІЗДЕУ орнына Excel FIND функциясын пайдалануға ешнәрсе кедергі келтірмейді, себебі бұл мысалда регистрді немесе регистрді сезінбеу айырмашылығы жоқ.

    Бұл оқулық Excel бағдарламасында ІЗДЕУ және ТАБУ функцияларын қалай пайдалануға болатынын түсіндіреді. Келесі оқулықта біз REPLACE функциясын мұқият қарастырамыз, сондықтан хабардар болыңыз. Оқығаныңыз үшін рахмет!

    Тәжірибелік жұмыс кітабын жүктеп алу

    Формула мысалдарын ТАБУ және ІЗДЕУ

    қатені қайтарады, себебі " табу" ішінде "a" жоқ.

    Excel FIND функциясы - есте сақтау керек нәрселер!

    Excel бағдарламасында ТАБУ формуласын дұрыс пайдалану үшін келесі қарапайым фактілерді есте сақтаңыз:

    1. ТАБУ функциясы әріптерді ескереді . Регистрді ескермейтін сәйкестік іздесеңіз, ІЗДЕУ функциясын пайдаланыңыз.
    2. Excel бағдарламасындағы ТАБУ функциясы қойылмалы таңбаларды пайдалануға рұқсат бермейді.
    3. Егер табу_мәтін аргументі болса бірнеше таңбадан тұрады, FIND функциясы бірінші таңбаның орнын қайтарады. Мысалы, FIND("ap","happy") формуласы 2 қайтарады, себебі "бақытты" сөзіндегі 2-ші әріптегі "a".
    4. Егер_мәтін ішінде бірнеше қайталану болса find_text, бірінші орын қайтарылады. Мысалы, FIND("l", "hello") 3 мәнін қайтарады, бұл "сәлем" сөзіндегі бірінші "l" таңбасының орны.
    5. Егер find_text бос жол болса "", Excel FIND формуласы іздеу жолындағы бірінші таңбаны қайтарады.
    6. Excel FIND функциясы #VALUE! қате , егер төмендегілердің кез келгені орын алса:
      • Мәтін_ішінде_табу_мәтіні жоқ.
      • Бастау_нөмірі мәтін ішіндегіден көбірек таңбалардан тұрады.
      • Бастау_нөмірі 0 (нөл) немесе теріс сан.

    Excel ІЗДЕУ функциясы

    Excel бағдарламасындағы ІЗДЕУ функциясы ТАБУ функциясына өте ұқсас, өйткені ол сонымен қатар файлдағы ішкі жолдың орнын қайтарады. мәтінжол. Синтаксис пен аргументтер FIND функциясына ұқсас па:

    SEARCH(табу_мәтін, мәтін ішінде, [бастау_нөмірі])

    ТАБУ функциясынан айырмашылығы, SEARCH функциясы регистрді ескермейді және қойылмалы таңбаларды пайдалануға мүмкіндік береді , келесі мысалда көрсетілгендей.

    Міне, Excel Іздеу формулаларының бірнешеуі:

    =SEARCH("market", "supermarket") 6 мәнін қайтарады, себебі "нарық" ішкі жолы "супермаркет" сөзінің 6-таңбасынан басталады. .

    =SEARCH("e", "Excel") 1 мәнін қайтарады, себебі "e" регистрді елемей, "Excel" сөзіндегі бірінші таңба болып табылады.

    ТАБУ сияқты, Excel бағдарламасының ІЗДЕУ функциясы #МӘН! қате, егер:

    • Табу_мәтін аргументінің мәні табылмаса.
    • Бастау_саны аргументі мәтін ішіндегі_санның ұзындығынан үлкен болса.
    • Бастау_нөмірі тең немесе нөлден аз.

    Осы оқулықта әрі қарай Excel жұмыс парақтарында ІЗДЕУ функциясын пайдалану жолын көрсететін бірнеше мағыналы формула мысалдарын табасыз.

    Жоғарыда айтылғандай, Excel бағдарламасындағы ТАБУ және ІЗДЕУ функциялары синтаксис пен қолдану тұрғысынан өте ұқсас. Дегенмен, олардың бір-екі айырмашылықтары бар.

    1. Регистрді ескеретін ТАБУ және регистрді ескермейтін ІЗДЕУ

    Excel ІЗДЕУ және ТАБУ функциялары арасындағы ең маңызды айырмашылық ІЗДЕУ регистрді сезбейді, ал ТАБУ регистрді ескермейді.

    Мысалы. , SEARCH("e", "Excel") 1 мәнін қайтарады, себебі ол елемейді"E" регистрі, ал FIND("e", "Excel") 4 мәнін қайтарады, себебі ол істі қарастырады.

    2. Қойылмалы таңбалармен іздеу

    Табудан айырмашылығы, Excel ІЗДЕУ функциясы табу_мәтін аргументіндегі қойылмалы таңбаларды қабылдайды:

    • Сұрақ белгісі (?) бір таңбаға сәйкес келеді және
    • Жұлдызша (*) кез келген таңбалар қатарына сәйкес келеді.

    Оның нақты деректерде қалай жұмыс істейтінін көру үшін келесі мысалды қарастырыңыз:

    Жоғарыдағы скриншотта көріп отырғаныңыздай, SEARCH("функция*2013", A2) формуласы ішкі_мәтін аргументінде сілтеме жасалған мәтін жолында "функцияның" екеуі де болса, ішкі жолдағы бірінші таңбаның ("f") орнын қайтарады. және «2013», арасында қанша басқа таңба болса да.

    Кеңес. Нақты сұрақ белгісін (?) немесе жұлдызшаны (*) табу үшін сәйкес таңбаның алдынан (~) белгісін теріңіз.

    Excel FIND және SEARCH формула мысалдары

    Тәжірибеде Excel FIND және SEARCH функциялары өздігінен сирек пайдаланылады. Әдетте, сіз оларды ОРТА, СОЛ немесе ОҢ сияқты басқа функциялармен бірге пайдаланасыз және келесі формула мысалдары кейбір нақты өмірдегі қолдануларды көрсетеді.

    1-мысал. Берілген таңбаның алдындағы немесе кейінгі жолды табыңыз

    Бұл мысал мәтін жолындағы белгілі бір таңбаның сол немесе оң жағындағы барлық таңбаларды қалай табуға және шығаруға болатынын көрсетеді. Түсінуді жеңілдету үшін мынаны қарастырыңызкелесі мысал.

    Егер сізде аттар бағаны (А бағаны) болса және сіз Аты мен Фамилияны бөлек бағандарға тартқыңыз келсе.

    Аттың атын алу үшін пайдалана аласыз. ТАБУ (немесе ІЗДЕУ) LEFT функциясымен бірге:

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

    немесе

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

    Сіз білетіндей, Excel СОЛ функциясы қайтарады. жолда ең сол жақтағы таңбалардың көрсетілген саны. Сіз ТАБУ функциясын бос орынның (« ») орнын анықтау үшін СОЛ функциясына қанша таңбаны шығару керектігін білу үшін пайдаланасыз. Бұл кезде бос орын орнынан 1-ді шегесіз, себебі қайтарылған мәнге бос орынды қосуды қаламайсыз.

    Тегін шығару үшін ОҢ, ТАБУ/ІЗДЕУ және ЖЕҢІЗ функцияларының тіркесімін пайдаланыңыз. LEN функциясы жолдағы таңбалардың жалпы санын алу үшін қажет, одан бос орынның орнын алып тастаңыз:

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

    немесе

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

    Келесі скриншот нәтижені көрсетеді:

    Ата атын шығару немесе атауларды жұрнақтармен бөлу сияқты күрделі сценарийлер үшін Excel бағдарламасында ұяшықтарды бөлу әдісі бөлімін қараңыз. формулаларды пайдалану.

    2-мысал. Мәтін жолындағы берілген таңбаның N-ші рет қайталануын табыңыз

    А бағанында кейбір мәтіндік жолдар бар делік, SKU тізімін айтыңыз және тапқыңыз келеді. жолдағы 2-ші сызықшаның орны. Келесі формула пайдалы жұмыс істейді:

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

    Алғашқы екеуіаргументтерді түсіндіру оңай: A2 ұяшығында сызықша («-») табыңыз. Үшінші аргументте (бастапқы_нөмір) Excel бағдарламасына іздеуді бірінші сызықша (ТАБУ("-",A2)+1) пайда болғаннан кейін бірден басталатын таңбадан бастау керектігін айтатын басқа ТАБУ функциясын ендірдіңіз.

    3-ші қайталану орнын қайтару үшін жоғарыдағы формуланы басқа FIND функциясының бастапқы_саны аргументіне ендіріңіз және қайтарылған мәнге 2 қосыңыз:

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

    Берілген таңбаның N-ші ретін табудың тағы бір оңай жолы Excel FIND функциясын CHAR және SUBSTITUTE тіркесімімен пайдалану болып табылады:

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

    Мұндағы "-" - қаралатын таңба және "3" - сіз тапқыңыз келетін N-ші рет.

    Жоғарыдағы формулада SUBSTITUTE функциясы сызықшаның 3-ші ретін ("-") CHAR() орнына ауыстырады. 1), бұл ASCII жүйесінде басып шығарылмайтын "Тақырыптың басы" таңбасы. CHAR(1) орнына 1-ден 31-ге дейінгі кез келген басқа басып шығарылмайтын таңбаны пайдалануға болады. Содан кейін FIND функциясы мәтін жолындағы сол таңбаның орнын қайтарады. Сонымен, жалпы формула келесідей:

    ТАБУ(CHAR(1),SUBSTITUTE( ұяшық , таңба ,CHAR(1), N-ші орын ))

    Бір қарағанда, жоғарыда келтірілген формулалардың практикалық мәні шамалы болып көрінуі мүмкін, бірақ келесі мысал олардың нақты тапсырмаларды шешуде қаншалықты пайдалы екенін көрсетеді.

    Ескерту. Excel FIND екенін есте сақтаңызфункция регистрге сезімтал. Біздің мысалда мұның еш айырмашылығы жоқ, бірақ әріптермен жұмыс істеп жатсаңыз және әріп-әріптерді ескермейтін сәйкестігін қаласаңыз, ТАБУ орнына ІЗДЕУ функциясын пайдаланыңыз.

    Мысал 3. Белгілі бір таңбадан кейінгі N таңбаны шығарып алыңыз

    Кез келген мәтін жолының ішінде берілген ұзындықтың ішкі жолын табу үшін Excel FIND немесе Excel SEARCH қолданбасын MID функциясымен бірге пайдаланыңыз. Келесі мысал мұндай формулаларды іс жүзінде қалай қолдануға болатынын көрсетеді.

    Біздің SKU тізімінде бірінші сызықшадан кейінгі алғашқы 3 таңбаны тауып, оларды басқа бағанға тартқыңыз келеді делік.

    Егер бірінші сызықшаның алдындағы таңбалар тобы әрқашан бірдей элементтер санын (мысалы, 2 таңба) қамтитын болса, бұл тривиальды тапсырма болар еді. MID функциясын 4-позициядан бастап жолдан 3 таңбаны қайтару үшін пайдалануға болады (алғашқы 2 таңба мен сызықшаны өткізіп жіберу):

    =MID(A2, 4, 3)

    Ағылшын тіліне аударылған, формула былай дейді: «A2 ұяшығын қараңыз, 4-таңбадан шығаруды бастаңыз және 3 таңбаны қайтарыңыз».

    Алайда, нақты жұмыс парақтарында шығарып алу керек ішкі жол кез келген жерден басталуы мүмкін. мәтіндік жолдың ішінде. Біздің мысалда бірінші сызықшаның алдында қанша таңба тұрғанын білмеуіңіз мүмкін. Бұл қиындықты жеңу үшін, шығарып алғыңыз келетін ішкі жолдың бастапқы нүктесін анықтау үшін ТАБУ функциясын пайдаланыңыз.

    Табу формуласы1-ші сызықшаның орны келесідей:

    =FIND("-",A2)

    Сызықшадан кейінгі таңбадан бастағыңыз келгендіктен, қайтарылған мәнге 1 қосыңыз және жоғарыдағы функцияны екінші аргументке ендіріңіз MID функциясының (бастапқы_нөмірі):

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

    Бұл сценарийде Excel Іздеу функциясы бірдей жақсы жұмыс істейді:

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

    Тамаша, бірақ бірінші сызықшадан кейінгі таңбалар тобында басқа таңбалар саны болса ше? Мм... бұл мәселе болуы мүмкін:

    Жоғарыдағы скриншотта көріп отырғаныңыздай, формула 1 және 2 жолдар үшін тамаша жұмыс істейді. 4 және 5 жолдарда екінші топта 4 таңба бар, бірақ тек алғашқы 3 таңба ғана қайтарылады. 6 және 7-жолдарда екінші топта тек 2 таңба бар, сондықтан біздің Excel Іздеу формуласы олардан кейін сызықша береді.

    Егер сіз 1-ші және 2-ші көріністер арасындағы барлық таңбаларды қайтарғыңыз келсе Белгілі бір таңбаның (осы мысалдағы сызықша), сіз қалай жалғастырар едіңіз? Міне, жауап:

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

    Осы MID формуласын жақсырақ түсіну үшін оның аргументтерін бір-бірлеп қарастырайық:

    • 1-ші аргумент (мәтін). Бұл сіз шығарып алғыңыз келетін таңбаларды қамтитын мәтін жолы, осы мысалдағы A2 ұяшығы.
    • 2-аргумент (бастапқы_позиция). Шығарғыңыз келетін бірінші таңбаның орнын көрсетеді. Жолдағы бірінші сызықшаны табу және оған 1 қосу үшін FIND функциясын пайдаланасызсол мән, себебі сызықшадан кейінгі таңбадан бастағыңыз келеді: FIND("-",A2)+1.
    • 3-аргумент (таңбалар_саны). Қайтарғыңыз келетін таңбалар санын көрсетеді. Біздің формуламызда бұл ең қиын бөлік. Сіз екі FIND (немесе ІЗДЕУ) функциясын пайдаланасыз, біреуі бірінші сызықшаның орнын анықтайды: FIND("-",A2). Ал екіншісі екінші сызықшаның орнын қайтарады: FIND("-", A2, FIND("-",A2)+1). Содан кейін сіз соңғысынан біріншісін алып тастайсыз, содан кейін 1-ді шегесіз, себебі сіз екі сызықты қосқыңыз келмейді. Нәтижесінде сіз 1-ші және 2-ші сызықшалар арасындағы таңбалар санын аласыз, бұл дәл біз іздеген нәрсе. Сонымен, сіз бұл мәнді MID функциясының таңбалар_саны аргументіне бересіз.

    Ұқсас жолмен 2-ші сызықшадан кейін 3 таңбаны қайтаруға болады:

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

    Немесе 2-ші және 3-ші сызықшалар арасындағы барлық таңбаларды шығарыңыз:

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

    Мысал 4. Жақшаның арасындағы мәтінді табыңыз

    А бағанында ұзын мәтіндік жолыңыз бар және сіз (жақшалар) ішіне алынған мәтінді ғана тауып, шығарып алғыңыз келеді делік.

    Ол үшін сізге MID функциясы қажет болатын таңбалардың қажетті санын қайтарады. жолды және қай жерден бастау керектігін және қанша таңбаны шығару керектігін анықтау үшін Excel FIND немесе ІЗДЕУ функциясын пайдаланады.

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

    Бұл формуланың логикасы біз алдыңғы мақалада талқылағандарға ұқсас. мысал. Және

    Майкл Браун - бағдарламалық құралдарды пайдалана отырып, күрделі процестерді жеңілдетуге құмарлығы бар арнайы технология әуесқойы. Технологиялық индустрияда он жылдан астам тәжірибесі бар ол Microsoft Excel және Outlook, сондай-ақ Google Sheets және Docs бағдарламаларында өз дағдыларын жетілдірді. Майклдың блогы өз білімі мен тәжірибесін басқалармен бөлісуге, өнімділік пен тиімділікті арттыруға арналған оңай орындалатын кеңестер мен оқулықтар беруге арналған. Сіз тәжірибелі кәсіпқой болсаңыз да, жаңадан бастаушы болсаңыз да, Майклдың блогы осы маңызды бағдарламалық құралдарды барынша пайдалану үшін құнды түсініктер мен практикалық кеңестер ұсынады.