Სარჩევი
როდესაც თქვენს ფურცელში გჭირდებათ მონაცემების პოვნა, რომლებიც შეესაბამება საკვანძო ჩანაწერს, ჩვეულებრივ, თქვენ მიმართავთ Google Sheets VLOOKUP-ს. მაგრამ თქვენ მიდიხართ: VLOOKUP შეზღუდვებით თითქმის მაშინვე გიბიძგებთ. ამიტომ სჯობს გაზარდოთ ამოცანის რესურსები INDEX MATCH-ის სწავლით.
INDEX MATCH Google Sheets-ში არის ორი ფუნქციის კომბინაცია: INDEX და MATCH. ტანდემში გამოყენებისას ისინი მოქმედებენ, როგორც უკეთესი ალტერნატივა Google Sheets VLOOKUP-ისთვის. მოდით გავეცნოთ მათ შესაძლებლობებს ერთად ამ ბლოგ პოსტში. მაგრამ პირველ რიგში, მსურს შემოგთავაზოთ მათი როლები ელცხრილებში.
Google Sheets MATCH ფუნქცია
მინდა დავიწყო Google-ით Sheets MATCH, რადგან ეს მართლაც მარტივია. ის ასკანირებს თქვენს მონაცემებს კონკრეტულ მნიშვნელობაზე და აბრუნებს მის პოზიციას:
=MATCH(ძებნის_გასაღები, დიაპაზონი, [ძიების_ტიპი])- ძებნის_გასაღები არის ის ჩანაწერი, რომელსაც ეძებთ. სავალდებულოა.
- დიაპაზონი არის მწკრივი ან სვეტი, რომლის შესანახადაც საჭიროა.
შენიშვნა. MATCH იღებს მხოლოდ ერთგანზომილებიან მასივებს: მწკრივს ან სვეტს.
- ძებნის_ტიპი არჩევითია და განსაზღვრავს, დამთხვევა ზუსტი უნდა იყოს თუ მიახლოებითი. თუ გამოტოვებულია, ნაგულისხმევად არის 1:
- 1 ნიშნავს, რომ დიაპაზონი დალაგებულია ზრდის მიხედვით. ფუნქცია იღებს უდიდეს მნიშვნელობას, რომელიც ნაკლებია ან ტოლია თქვენს ძებნის_გასაღები .
- 0 ფუნქციას ეძებს ზუსტი შესატყვისი იმ შემთხვევაში, თუ თქვენი დიაპაზონი არ არისდალაგებულია.
- -1 მიანიშნებს, რომ ჩანაწერები დალაგებულია კლებადობით დახარისხების გამოყენებით. ამ შემთხვევაში, ფუნქცია იღებს უმცირეს მნიშვნელობას, რომელიც აღემატება ან ტოლია თქვენს საძიებო_გასაღებს .
აჰა მაგალითი: გარკვეულის პოზიციის მისაღებად. berry ყველა კენკრის სიაში, მე მჭირდება შემდეგი MATCH ფორმულა ჩემს Google Sheets-ში:
=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)
როგორ გამოვიყენოთ INDEX MATCH Google Sheets-ში — ფორმულის მაგალითები
როდესაც INDEX და MATCH ერთად გამოიყენება ელცხრილებში, ისინი ყველაზე ძლიერები არიან. მათ შეუძლიათ აბსოლუტურად შეცვალონ Google Sheets VLOOKUP და მიიღონ საჭირო ჩანაწერი ცხრილიდან დაფუძნებულითქვენი საკვანძო მნიშვნელობა.
შექმენით თქვენი პირველი INDEX MATCH ფორმულა Google Sheets-ისთვის
ვთქვათ, რომ გსურთ მიიღოთ მარაგის ინფორმაცია Cranberry-ზე იმავე ცხრილიდან, რომელიც მე ზემოთ გამოვიყენე. მე მხოლოდ B და C სვეტები გავცვალე (რასაც ცოტა მოგვიანებით გაიგებთ).
- ახლა ყველა კენკრა ჩამოთვლილია C სვეტში. Google Sheets MATCH ფუნქცია დაგეხმარებათ ზუსტი მწკრივის დადგენაში. Cranberry: 8
=MATCH("Cranberry", C1:C10, 0)
- ჩადეთ მთელი MATCH ფორმულა row არგუმენტში INDEX ფუნქციაში:
=INDEX(A1:C10, MATCH("Cranberry", C1:C10, 0))
ეს დააბრუნებს მთელ რიგს მოცვით.
- მაგრამ რადგან ყველაფერი რაც თქვენ გჭირდებათ არის მარაგის ინფორმაცია, მიუთითეთ საძიებო სვეტის ნომერიც: 3
=INDEX(A1:C10, MATCH("Cranberry", C1:C10,0), 2)
- Voila !
- შეგიძლიათ უფრო შორს წახვიდეთ და უარი თქვათ ბოლო სვეტის ინდიკატორზე ( 2 ). ის საერთოდ არ დაგჭირდებათ, თუ პირველ არგუმენტად იყენებთ მხოლოდ საძიებო სვეტს ( B1:B10 ) და არა მთელ ცხრილს ( A1:C10 ):
=INDEX(B1:B10, MATCH("Cranberry", C1:C10, 0))
რჩევა. სხვადასხვა კენკრის ხელმისაწვდომობის შესამოწმებლად უფრო მოსახერხებელი გზა იქნება მათი განთავსება ჩამოსაშლელ სიაში ( E2 ) და თქვენი MATCH ფუნქციის მითითება ამ სიის მქონე უჯრედში:
=INDEX(B1:B10, MATCH(E2, C1:C10, 0))
როგორც კი კენკრას აირჩევთ, შესაბამისი მნიშვნელობა შესაბამისად შეიცვლება:
რატომ არის INDEX MATCH Google Sheets-ში უკეთესი ვიდრე VLOOKUP
თქვენ უკვე იცით, რომ Google Sheets INDEX MATCH ეძებს თქვენს მნიშვნელობას ცხრილში და აბრუნებს სხვა დაკავშირებულ ჩანაწერს იმავედანრიგი. თქვენ იცით, რომ Google Sheets VLOOKUP ზუსტად იგივეს აკეთებს. მაშ, რატომ უნდა იდარდო?
საქმე ის არის, რომ INDEX MATCH აქვს ზოგიერთი უპირატესობა VLOOKUP-თან შედარებით:
- მარცხნივ ძიება შესაძლებელია . მე შევცვალე სვეტების ადგილები ადრე ამის საილუსტრაციოდ: INDEX MATCH ფუნქცია Google Sheets-ში შეიძლება და გამოიყურება ძიების სვეტის მარცხნივ. VLOOKUP ყოველთვის ეძებს დიაპაზონის პირველ სვეტს და ეძებს შესატყვისებს მის მარჯვნივ — წინააღმდეგ შემთხვევაში, ის იღებს მხოლოდ #N/A შეცდომებს:
- არ არის არეულობა მითითებები ახალი სვეტების დამატებისა და არსებულის გადატანისას. თუ დაამატებთ ან გადაადგილებთ სვეტებს, INDEX MATCH ავტომატურად აისახება ცვლილებებს შედეგში ჩარევის გარეშე. ვინაიდან თქვენ იყენებთ სვეტების მითითებებს, ისინი მყისიერად რეგულირდება Google Sheets-ის მიერ:
განაგრძეთ და სცადეთ ამის გაკეთება VLOOKUP-ით: საძიებო სვეტისთვის ის მოითხოვს შეკვეთის ნომერს და არა უჯრედის მითითებებს. ამრიგად, თქვენ უბრალოდ მიიღებთ არასწორ მნიშვნელობას, რადგან სხვა სვეტი იკავებს იმავე ადგილს - სვეტი 2 ჩემს მაგალითში:
- განიხილავს ტექსტის შემთხვევას საჭიროების შემთხვევაში (დაწვრილებით ამის შესახებ ქვემოთ).
- შეიძლება გამოყენებულ იქნას ვერტიკალური საძიებლად მრავალი კრიტერიუმის საფუძველზე.
გიწვევთ, რომ ნახოთ ბოლო ორ პუნქტში დეტალურად ქვემოთ.
რეზერვებზე მგრძნობიარე v-მოძებნა INDEX MATCH-ით Google Sheets-ში
INDEX MATCH არის გამოსავალი, როდესაც საქმე ეხება რეგისტრის-სენსიტიურობა.
ვვარაუდოთ, რომ ყველა კენკრა იყიდება ორი გზით - ფხვიერი (დახლზე აწონილი) და შეფუთული ყუთებში. მაშასადამე, სიაში არის თითოეული კენკრის ორი შემთხვევა დაწერილი სხვადასხვა შემთხვევაში, თითოეულს აქვს საკუთარი ID, რომელიც ასევე განსხვავდება შემთხვევების მიხედვით:
მაშ, როგორ შეგიძლიათ მოძებნოთ საფონდო ინფორმაცია კენკრის შესახებ, რომელიც გაიყიდა გარკვეული გზით? VLOOKUP დააბრუნებს სახელს, რომელსაც აღმოაჩენს, მიუხედავად მისი საქმისა.
საბედნიეროდ, INDEX MATCH-ს Google Sheets-ისთვის ეს სწორად შეუძლია. თქვენ უბრალოდ დაგჭირდებათ ერთი დამატებითი ფუნქციის გამოყენება — FIND ან EXACT.
მაგალითი 1. FIND რეგისტრის მგრძნობიარე Vlookup-ისთვის
FIND არის რეგისტრის მგრძნობიარე ფუნქცია Google Sheets-ში, რაც მას შესანიშნავს ხდის მცირე ზომის ვერტიკალური საძიებლად:
=ArrayFormula(INDEX(B2:B19, MATCH(1, FIND(E2, C2:C19)), 0))
ვნახოთ რა ხდება ამ ფორმულაში:
- FIND სკანირებს C სვეტს ( C2:C19 ) ჩანაწერისთვის E2 ( cherry ) მისი ასოს შემთხვევის გათვალისწინებით. მოთავსების შემდეგ, ფორმულა „მონიშნავს“ ამ უჯრედს რიცხვით — 1 .
- MATCH ეძებს ამ ნიშანს — 1 — იმავე სვეტში ( C ) და გადასცემს მისი მწკრივის ნომერს INDEX-ს.
- INDEX ჩამოდის ამ მწკრივში B სვეტში ( B2:B19 ) და მოგიტანს საჭირო ჩანაწერს.
- როდესაც დაასრულებთ ფორმულის შექმნას, დააჭირეთ Ctrl+Shift+Enter, რომ დასაწყისში ArrayFormula დაამატოთ. ეს აუცილებელია, რადგან მის გარეშე FIND ვერ შეძლებს მასივების ძიებას (ერთზე მეტ უჯრედში). ან შეგიძლიათ აკრიფოთ' ArrayFormula ' თქვენი კლავიატურიდან.
მაგალითი 2. EXACT რეგისტრის მგრძნობიარე Vlookup-ისთვის
თუ FIND-ს ჩაანაცვლებთ EXACT-ით, ეს უკანასკნელი მოძებნის ჩანაწერებს ზუსტად იგივე სიმბოლოებით, მათი ტექსტის რეგისტრის ჩათვლით.
ერთადერთი განსხვავება ისაა, რომ EXACT "ნიშნავს" შესატყვისს TRUE და არა რიცხვით 1 . აქედან გამომდინარე, MATCH-ის პირველი არგუმენტი უნდა იყოს TRUE :
=ArrayFormula(INDEX(B2:B19, MATCH(TRUE, EXACT(E2, C2:C19), 0)))
Google Sheets INDEX MATCH მრავალი კრიტერიუმით
რა მოხდება, თუ არსებობს რამდენიმე პირობა, რომლის საფუძველზეც გსურთ ჩანაწერის მიღება?
მოდით, გადავამოწმოთ ალუბლის ფასი, რომელიც იყიდება PP თაიგულებში და უკვე იწურება :
მე მოვაწყე ყველა კრიტერიუმი ჩამოსაშლელ სიებში F სვეტში. და ეს არის Google Sheets INDEX MATCH, რომელიც მხარს უჭერს მრავალ კრიტერიუმს და არა VLOOKUP-ს. აი ფორმულა, რომლის გამოყენებაც დაგჭირდებათ:
=ArrayFormula(INDEX(B2:B24, MATCH(CONCATENATE(F2:F4), A2:A24&C2:C24&D2:D24, 0),))
ნუ გეშინიათ! :) მისი ლოგიკა რეალურად საკმაოდ მარტივია:
- CONCATENATE(F2:F4) აერთიანებს სამივე ჩანაწერს უჯრედებიდან კრიტერიუმებით ერთ სტრიქონში:
CherryPP bucketRunning out
ეს არის search_key MATCH-ისთვის, ან, სხვა სიტყვებით რომ ვთქვათ, რას ეძებთ ცხრილში.
- A2:A24&C2:C24&D2:D24 წარმოადგენს დიაპაზონს MATCH ფუნქციის შესამოწმებლად. ვინაიდან სამივე კრიტერიუმი მოქმედებს სამი ცალკეული სვეტი, ამ გზით თქვენ აერთიანებთ მათ:
CherryCardboard უჯრა მარაგში
CherryFilm შეფუთვა არ არის მარაგში
CherryPP bucket იწურება
და ა.შ. .
- ბოლო არგუმენტი MATCH-ში — 0 — შესაძლებელს ხდის CherryPP bucketRunning out ზუსტი შესატყვისის პოვნას კომბინირებული სვეტების ყველა იმ მწკრივს შორის. როგორც ხედავთ, ის მე-3 რიგშია.
- და შემდეგ INDEX აკეთებს თავის საქმეს: ის იღებს ჩანაწერს B სვეტის მე-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 Maches არის სპეციალური დანამატი Google Sheets-ისთვის, რომელიც შექმნილია:
- მოძებნოს ფორმულების გარეშე
- მოძებნოს ყველა მიმართულებით
- მოძებნოს მრავალი პირობა მონაცემთა სხვადასხვა ტიპისთვის : ტექსტი, რიცხვები, თარიღები, დრო, და ა.შ.
- მიიღეთ რამდენიმე შესატყვისი, რამდენიც გჭირდებათ (იმ პირობით, რომ თქვენს ცხრილში იმდენი იქნება, რა თქმა უნდა)
ინტერფეისი მარტივია, ასე რომ თქვენ არ გეპარებათ ეჭვი, აკეთებთ თუ არაყველაფერი სწორად:
- აირჩიეთ წყაროს დიაპაზონი.
- დააყენეთ დასაბრუნებელი შესატყვისების და სვეტების რაოდენობა.
- დააზუსტეთ პირობები წინასწარ განსაზღვრული ოპერატორების გამოყენებით ( შეიცავს, =, არ არის ცარიელი , შორის და ა.შ.).
ასევე შეძლებთ:
- გადახედეთ შედეგს
- გადაწყვიტეთ სად მოათავსოთ ის
- და როგორ: როგორც ფორმულა თუ უბრალოდ მნიშვნელობები
არ გამოტოვოთ ეს შესაძლებლობა, შეამოწმოთ დანამატი. განაგრძეთ და დააინსტალირეთ ის Google Workspace Marketplace-დან. მისი სამეურვეო გვერდი დეტალურად აგიხსნით ყველა ვარიანტს.
ჩვენ ასევე მოვამზადეთ სპეციალური სასწავლო ვიდეო:
შეგხვდებით ქვემოთ მოცემულ კომენტარებში ან შემდეგ სტატიაში ;)