Мазмұны
Парағыңыздан белгілі бір негізгі жазбаға сәйкес деректерді табу қажет болғанда, сіз әдетте Google Sheets VLOOKUP қолданбасына жүгінесіз. Бірақ сіз барсыз: VLOOKUP сізді бірден дерлік шектеулермен ұрады. Сондықтан INDEX MATCH функциясын үйрену арқылы тапсырманың ресурстарын көбейткеніңіз жөн.
Google Sheets қолданбасындағы INDEX MATCH екі функцияның тіркесімі: INDEX және MATCH. Тандемде пайдаланылғанда, олар Google Sheets VLOOKUP үшін жақсы балама ретінде әрекет етеді. Осы блог жазбасында олардың мүмкіндіктерін бірге білейік. Бірақ алдымен мен сізге олардың электрондық кестелердегі рөлдері туралы қысқаша шолу бергім келеді.
Google Sheets MATCH функциясы
Мен Google-ден бастағым келеді Sheets MATCH, себебі бұл өте қарапайым. Ол белгілі бір мән үшін деректеріңізді сканерлейді және оның орнын қайтарады:
=МАТCH(іздеу_кілт, ауқым, [іздеу_түрі])- іздеу_кілтісі - бұл сіз іздеп жатқан жазба. Міндетті.
- ауқым - іздеуге арналған жол немесе баған. Міндетті.
Ескертпе. MATCH тек бір өлшемді массивтерді қабылдайды: жол немесе баған.
- іздеу_түрі міндетті емес және сәйкестік дәл немесе шамамен болуы керектігін анықтайды. Өткізілмесе, ол әдепкі бойынша 1 болады:
- 1 ауқым өсу ретімен сұрыпталғанын білдіреді. Функция іздеу_кілтінен кіші немесе оған тең ең үлкен мәнді алады.
- 0 ауқымыңыз болмаса, функция дәл сәйкестікті іздейді.сұрыпталған.
- -1 жазбалардың кемуі бойынша сұрыптау арқылы реттелгенін көрсетеді. Бұл жағдайда функция іздеу_кілтінен үлкен немесе оған тең ең кіші мәнді алады.
Мысал мынада: белгілі бір позицияны алу үшін жидек барлық жидектердің тізімінде болса, маған Google Sheets-те келесі MATCH формуласы қажет:
=MATCH("Blueberry", A1:A10, 0)
Google Sheets INDEX функциясы
MATCH мәнді қай жерден іздеу керектігін (ауқымдағы орнын) көрсеткенімен, Google Sheets INDEX функциясы жол және баған ығысулары негізінде мәнді өзі алады:
=INDEX(анықтама, [жол], [баған])- анықтама - қарауға арналған ауқым. Міндетті.
- жол - ауқымыңыздың ең бірінші ұяшығынан ығыстырылатын жолдар саны . Міндетті емес, егер өткізілмесе, 0.
- баған , жол сияқты, ығысу бағандарының саны. Сондай-ақ міндетті емес, егер өткізілмесе, 0 болады.
Қосымша аргументтердің екеуін де (жол және баған) көрсетсеңіз, Google Sheets INDEX тағайындалған ұяшықтан жазбаны қайтарады:
=INDEX(A1:C10, 7, 1)
Осы аргументтердің бірін өткізіп жіберсеңіз, функция сізге сәйкес жолды немесе бағанды толығымен береді:
=INDEX(A1:C10, 7)
Google Sheets-те INDEX MATCH қалай пайдалану керек — формула мысалдары
INDEX және MATCH электрондық кестелерде бірге пайдаланылғанда, олар ең күшті болады. Олар Google Sheets VLOOKUP функциясын толығымен алмастыра алады және негізінде кестеден қажетті жазбаны ала аладысіздің негізгі мәніңіз.
Google Sheets үшін бірінші INDEX MATCH формуласын жасаңыз
Жоғарыда қолданған кестеден мүкжидек туралы қор ақпаратын алғыңыз келеді делік. Мен тек B және C бағандарын ауыстырдым (неге екенін сәл кейінірек түсінесіз).
- Енді барлық жидектер C бағанында берілген. Google Sheets MATCH функциясы нақты жолды табуға көмектеседі. мүкжидек: 8
=MATCH("Cranberry", C1:C10, 0)
- Бүкіл MATCH формуласын INDEX функциясындағы жол аргументіне қойыңыз:
=INDEX(A1:C10, MATCH("Cranberry", C1:C10, 0))
Бұл мүкжидек бар барлық жолды қайтарады.
- Бірақ сізге тек қор туралы ақпарат қажет болғандықтан, іздеу бағанының нөмірін де көрсетіңіз: 3
=INDEX(A1:C10, MATCH("Cranberry", C1:C10,0), 2)
- Voila !
- Сіз әрі қарай жүріп, соңғы баған көрсеткішінен ( 2 ) бас тарта аласыз. Бірінші аргумент ретінде бүкіл кестені ( A1:C10 ) емес, тек іздеу бағанын ( B1:B10 ) пайдалансаңыз, бұл сізге мүлдем қажет болмайды:
=INDEX(B1:B10, MATCH("Cranberry", C1:C10, 0))
Кеңес. Әртүрлі жидектердің бар-жоғын тексерудің ыңғайлы жолы оларды ашылмалы тізімге ( E2 ) орналастыру және сол тізімі бар ұяшыққа MATCH функциясын көрсету:
=INDEX(B1:B10, MATCH(E2, C1:C10, 0))
Жидекті таңдағаннан кейін қатысты мән сәйкесінше өзгереді:
Неге Google Sheets-тегі INDEX MATCH VLOOKUP қарағанда жақсырақ
Google Sheets INDEX MATCH сіздің мәніңізді кестеде іздейтінін және сол жазбадан басқа қатысты жазбаны қайтаратынын білесіз.қатар. Сіз Google Sheets VLOOKUP дәл осылай істейтінін білесіз. Ендеше, неге алаңдату керек?
Мәселе мынада, INDEX MATCH VLOOKUP қарағанда кейбір маңызды артықшылықтарға ие :
- Сол жақ іздеуге болады . Мен мұны суреттеу үшін бағандардың орындарын бұрын өзгерттім: Google Sheets ішіндегі INDEX MATCH функциясы іздеу бағанының сол жағына қарайды және көрінеді. VLOOKUP әрқашан ауқымның бірінші бағанын іздейді және оның оң жағындағы сәйкестіктерді іздейді — әйтпесе ол тек #N/A қателерін алады:
- Бұзылған жоқ. жаңа бағандарды қосқанда және барларын жылжытқанда сілтемелер. Бағандарды қоссаңыз немесе жылжытсаңыз, INDEX MATCH нәтижеге араласпай өзгерістерді автоматты түрде көрсетеді. Баған сілтемелерін пайдаланатындықтан, олар Google Sheets арқылы бірден реттеледі:
Жалғастырыңыз және мұны VLOOKUP арқылы орындап көріңіз: ол іздеу бағаны үшін ұяшық сілтемелерін емес, тапсырыс нөмірін қажет етеді. Осылайша, сіз дұрыс емес мән аласыз, себебі басқа баған бірдей орынды алады — менің мысалдағы 2 бағаны:
- Керек кезде мәтін регистрін қарастырады (төменде бұл туралы толығырақ).
- Бірнеше критерийге негізделген тік іздеу үшін пайдалануға болады.
Мен сізді қарауға шақырамын төменде егжей-тегжейлі берілген соңғы екі тармақта.
Google Sheets-тегі INDEX MATCH көмегімен регистрді ескеретін v-іздеу
INDEX MATCH регистрге келетін болсақ-сезімталдық.
Егер барлық жидектер екі жолмен сатылады делік: бос (санақта өлшенеді) және қораптарға оралады. Демек, тізімде әр жидектің әр түрлі жағдайда жазылған екі көрінісі бар, олардың әрқайсысының жеке идентификаторы бар, олар да жағдайларда өзгереді:
Осылайша, тізімді қалай іздеуге болады. белгілі бір жолмен сатылатын жидек туралы ақпарат? VLOOKUP қандай жағдайда болса да тапқан бірінші атын қайтарады.
Бақытымызға орай, Google Sheets үшін INDEX MATCH мұны дұрыс жасай алады. Сізге тек бір қосымша функцияны пайдалану қажет — FIND немесе EXACT.
1-мысал. Регистрді ескеретін Vlookup үшін FIND
FIND — Google Sheets жүйесіндегі регистрді ескеретін функция, ол оны керемет етеді. регистрді ескеретін тік іздеу үшін:
=ArrayFormula(INDEX(B2:B19, MATCH(1, FIND(E2, C2:C19)), 0))
Осы формулада не болатынын көрейік:
- C бағанын табу ( C2:C19 ) E2 ( шие ) жазбасы үшін оның әріптік регистрін қарастырады. Орналастырылғаннан кейін формула сол ұяшықты — 1 санымен «белгілейді».
- MATCH осы белгіні — 1 — сол бағанда ( ) іздейді. C ) және оның жолының нөмірін INDEX мәніне береді.
- INDEX B бағанындағы сол жолға түседі ( B2:B19 ) және сізге қажетті жазбаны алады.
- Формуланы құрастыруды аяқтаған кезде, ArrayFormula басына қосу үшін Ctrl+Shift+Enter пернелерін басыңыз. Бұл қажет, себебі онсыз FIND массивтерде (бірден көп ұяшықта) іздей алмайды. Немесе теруге боладыПернетақтадан ' ArrayFormula '.
2-мысал. Регистрді ескеретін Vlookup үшін EXACT
Егер FIND функциясын EXACT деп ауыстырсаңыз, соңғысы жазбаларды іздейді. дәл сол таңбалармен, соның ішінде олардың мәтін регистрімен.
Жалғыз айырмашылық мынада: НАҚ сәйкестікті 1 саны емес, ШЫН "белгілейді". Демек, MATCH үшін бірінші аргумент ШЫН болуы керек:
=ArrayFormula(INDEX(B2:B19, MATCH(TRUE, EXACT(E2, C2:C19), 0)))
Бірнеше критерийі бар Google Sheets INDEX MATCH
Егер жазбаны алғыңыз келетін бірнеше шарт болса ше?
PP шелектерде сатылатын шие бағасын тексеріп көрейік және қазірдің өзінде таусылып қалды :
Мен F бағанындағы ашылмалы тізімдердегі барлық шарттарды реттедім. Бұл Google Sheets INDEX VLOOKUP емес, бірнеше шарттарды қолдайтын MATCH. Мына формуланы пайдалану қажет:
=ArrayFormula(INDEX(B2:B24, MATCH(CONCATENATE(F2:F4), A2:A24&C2:C24&D2:D24, 0),))
Дүрбелең емес! :) Оның логикасы шын мәнінде өте қарапайым:
- CONCATENATE(F2:F4) шарты бар ұяшықтардағы барлық үш жазбаны бір жолға біріктіреді:
CherryPP шелегі аяқталуда
Бұл MATCH үшін іздеу_кілті немесе, басқаша айтқанда, кестеде іздеген нәрсе.
- A2:A24&C2:C24&D2:D24 сәйкес келетін SATCH функциясы үшін диапазон құрайды. Үш шарттың барлығы мына жерде орында үш бөлек баған, осылайша сіз оларды біріктіресіз:
CherryCardboard науасыҚойымда бар
CherryFilm орамыҚойда жоқ
CherryPP шелегіТаусылды
т.б. .
Сондай-ақ_қараңыз: Мысалдармен Excel бағдарламасындағы бірнеше парақтар бойынша VLOOKUP - MATCH ішіндегі соңғы аргумент — 0 — біріктірілген бағандардың барлық осы жолдарының арасында CherryPP bucketRunning үшін дәл сәйкестікті табуға мүмкіндік береді. Көріп отырғаныңыздай, ол 3-ші қатарда.
- Содан кейін INDEX өз міндетін атқарады: ол жазбаны В бағанының 3-ші жолынан алады.
- ArrayFormula басқа функцияларға мүмкіндік беру үшін пайдаланылады. массивтермен жұмыс.
Кеңес. Егер формула сәйкестікті таппаса, ол қатені қайтарады. Бұған жол бермеу үшін сіз осы формуланы толығымен IFERROR ішіне орап (оны бірінші аргумент етіңіз) және екінші аргумент ретінде қателердің орнына ұяшыққа көргіңіз келетін нәрсені енгізе аласыз:
=IFERROR(ArrayFormula(INDEX(B2:B27, MATCH(CONCATENATE(F2:F4), A2:A27&C2:C27&D2:D27, 0),)), "Not found")
Google Sheets-тегі INDEX MATCH-ке жақсырақ балама — Бірнеше VLOOKUP сәйкестіктері
Қандай іздеу функциясын таңдасаңыз да, VLOOKUP немесе INDEX MATCH, екеуіне де жақсырақ балама бар.
Бірнеше рет. VLOOKUP Matches — Google Sheets үшін арнайы қондырма:
- формулаларсыз іздеу
- барлық бағытта іздеу
- әр түрлі деректер түрлерін бірнеше шарттар бойынша іздеу : мәтін, сандар, күндер, уақыт, және т.б.
- қажетінше бірнеше сәйкестіктерді алыңыз (әрине кестеде олардың саны сонша болған жағдайда)
Интерфейс қарапайым, сондықтан істеп жатқаныңызға күмәнданудың қажеті жоқбарлығы дұрыс:
- Деректер ауқымын таңдаңыз.
- Қайтарылатын сәйкестіктер мен бағандар санын орнатыңыз.
- Алдын ала анықталған операторларды (<1) пайдаланып шарттарды дәл баптаңыз>құрамында, =, бос емес , арасында және т.б.).
Сонымен қатар сіз:
- нәтижені алдын ала қарау
- оны қайда орналастыру керектігін шешіңіз
- және қалай: формула немесе жай мәндер ретінде
Қондырманы тексеру үшін бұл мүмкіндікті жіберіп алмаңыз. Жалғастырып, оны Google Workspace Marketplace сайтынан орнатыңыз. Оның оқулық беті әрбір опцияны егжей-тегжейлі түсіндіреді.
Сонымен қатар біз арнайы нұсқаулық бейне дайындадық:
Төмендегі түсініктемелерде немесе келесі мақалада кездескенше ;)