Sadržaj
VLOOKUP je vrlo popularna funkcija u Excelu koja se odnosi na vertikalno traženje. Možemo koristiti ugrađenu funkciju VLOOKUP ili čak možemo napraviti vlastite formule koje će raditi kao vertikalno traženje za vraćanje vrijednosti s dinamičnijim kriterijima. U ovom članku ću pokazati kako pronaći zadnju vrijednost u stupcu pomoću VLOOKUP u Excelu.
Preuzmite Vježnicu
Preuzmite Excel radnu knjigu koju smo koristili za pripremu ovog članka.
Posljednja vrijednost VLOOKUP u Column.xlsx
Upotreba funkcije VLOOKUP za Pronađite zadnju vrijednost u koloni
Upoznajmo se prvo s našom radnom sveskom. U ovoj tablici sa podacima koristio sam 3 kolone i 10 redova da predstavim iznose prodaje nekih prodavača prema odgovarajućim datumima.
U ovoj metodi ćemo pronaći posljednje pojavljivanje vrijednosti koristeći funkciju VLOOKUP . VLOOKUP označava ‘ Okomito traženje ’. To je funkcija koja čini da Excel traži određenu vrijednost u stupcu. Ovdje imamo 3 različita prodajna iznosa računa. Sada ćemo pronaći iznos njegove posljednje prodaje u ćeliji G5
Koraci :
➦ Aktiviraj ćeliju G5 , upišite formulu datu u nastavku:
=VLOOKUP(F5,C5:D13,2)
➦ Pritisnite dugme Enter i dobićete poslednje pojavljivanje njegove prodaje.
Ali VLOOKUP neće dati pravi odgovor za nesortirane podatke upribližni način rada. Pogledajte sliku ispod.
I ako koristimo exact match za četvrti argument, prikazat će se prvo podudaranje kao na slici ispod. Zato što vlookup koristi binarno pretraživanje. Dakle, kada pronađe vrijednost veću od tražene vrijednosti, onda se vraća na prethodnu vrijednost za prikaz, pogledajte je na slici ispod.
Da biste prevazišli ovu situaciju za nesortirani podaci da bismo pronašli posljednje pojavljivanje morat ćemo koristiti funkcije pretraživanja ili druge kombinirane formule. Sada ćemo raspravljati o tim metodama u sljedećim odjeljcima.
Alternative funkciji VLOOKUP za pronalaženje posljednje vrijednosti u stupcu
Sada ćemo primijeniti četiri alternativne metode na pronađite zadnju vrijednost u koloni.
Metoda 1: Koristite funkciju LOOKUP da pronađete zadnju vrijednost u koloni
Ovdje ćemo pronaći zadnju vrijednost kolone sa funkcija LOOKUP u Excelu. Funkcija LOOKUP se koristi za pregledavanje jednog stupca ili reda kako bi se pronašla određena vrijednost sa istog mjesta u drugom stupcu ili redu. Ovdje ću pronaći zadnji iznos prodaje u ćeliji G4.
Koraci:
➦ Aktivirajte ćeliju G4.
➦ Unesite formulu datu ispod:
=LOOKUP(2,1/(D:D""),D:D)
➦ Zatim pritisnite dugme Enter i dobićete posljednju vrijednost.
👉 Raščlamba formule:
➥ D :D””
Ovdje će provjeriti jesu li ćelije u Koloni D prazne ili ne. To ćevrati kao-
{FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;FALSE…..}
➥ 1/(D:D””)
Podijelili smo 1 rezultatom. Kako FALSE znači 0 a TRUE znači 1 tako će rezultat biti sljedeći:
{#DIV/0!;#DIV/0!; #DIV/0!;1;1;1;1;1;1;1;#DIV/0!;#DIV/0!}
➥ LOOKUP(2,1/(D:D””),D:D)
Postavio sam vrijednost traženja 2 jer će funkcija pretraživanja pronaći 2 kroz kolonu, kada dođe do greška onda će se vratiti na svoju najbližu vrijednost 1 i prikazati taj rezultat. To će vratiti kao-
367
Metoda 2: Koristite funkcije INDEX i MATCH da pronađete posljednju vrijednost u stupcu
Ovdje ćemo koristiti kombinaciju funkcija INDEX i MATCH . Funkcija INDEX vraća vrijednost ili referencu na vrijednost iz tabele ili raspona. I funkcija MATCH se koristi za traženje određene stavke u rasponu, a zatim vraća relativnu poziciju te stavke u rasponu.
Koraci:
➦ Unesite formulu datu ispod u Ćelija G5
=INDEX(D5:D13,MATCH(F5,C5:C13,1))
➦ Pritisnite dugme Enter .
👉 Kako formula funkcionira:
➥ MATCH(F5,C5:C13,1)
Ovdje se funkcija MATCH koristi za pronalaženje vrijednosti ćelije F5 za stavke sortirane uzlaznim redoslijedom iz niza C5:C13. Postavljanje trećeg argumenta '1' ukazuje na približanmatch. Sada će funkcija vratiti kao-
6
Ona zapravo prikazuje broj reda koji se računa od prvog unosa.
➥ INDEX(D5:D13,MATCH(F5,C5:C13,1))
I funkcija INDEX će dati odgovarajuću prodaju ( D5:D13) prema prethodnom podudaranju iz niza ( C5:C13) koji će se vratiti kao-
367
To je zapravo posljednje pojavljivanje za Ćeliju F5
Metoda 3: Kombinacija funkcija INDEX, MAX, SUMPRODUCT I ROW za pronalaženje posljednje vrijednosti u stupcu
Sada ćemo obaviti zadatak s kombinacijom funkcija INDEX, MAX, SUMPRODUCT i ROW . Funkcija ROW će pronaći brojeve redova. SUMPRODUCT je funkcija koja množi raspon ćelija ili nizova i vraća zbroj proizvoda. Funkcija MAX će pronaći maksimalan broj. A funkcija INDEX vraća vrijednost ili referencu na vrijednost iz tabele ili raspona.
Koraci:
➦ Omogućite uređivanje u Ćelija F7
➦ Kopirajte i zalijepite formulu datu ispod:
=INDEX($C$5:$C$13,SUMPRODUCT(MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))-4))
➦ I pritisnite Enter dugme.
👉 Kako formula funkcionira:
➥ ROW($B$5:$B$13)
Funkcija ROW će pokazati broj reda za niz koji će vratiti kao-
{ 5;6;7;8;9;10;11;12;13}
➥ ($E$7=$B$5:$B$13)
Ovdje Ćelija E7 je naša vrijednost pretraživanja i ovoformula će je uskladiti kroz niz B5:B13 . Zatim će se vratiti kao-
{FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE}
➥ RED($B$5:$B$13)*($E$7=$B$5:$B$13)
Množenje prethodne dvije formule zapravo će pomnožiti odgovarajući brojevi redova. FALSE znači 0 i TRUE znači 1 . Dakle, nakon množenja, vratit će se kao-
{0;0;0;0;9;0;0;0;13}
➥ MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))
MAX funkcija će pronaći maksimalnu vrijednost iz prethodnog rezultata koja će se vratiti kao
13
➥ SUMPRODUCT(MAX(ROW($ B$5:$B$13)*($E$7=$B$5:$B$13))-4)
Sada se funkcija SUMPRODUCT koristi za pronalaženje reda broj u nizu . Kako naša lista počinje od 5. reda nadalje, 4 je oduzeto. Dakle, pozicija posljednjeg pojavljivanja Bill je 9 na našoj listi tako da će formula vratiti kao-
9 .
➥ INDEX($C$5:$C$13,SUMPRODUCT(MAX(RED($B$5:$B$13)*($E$7=$B$5: $B$13))-4))
Funkcija INDEX se koristi za pronalaženje prodaje za posljednje podudarno ime. I vratit će se kao-
563
To je naše posljednje pojavljivanje za račun.
Metoda 4 : Koristite Excel VBA za pronalaženje posljednjeg pojavljivanja vrijednosti u koloni
Ako želite kodirati u Excelu, onda je ova metoda prikladna za vas. Mimože izvršiti i prethodnu operaciju koristeći VBA metodu. Prođimo kroz sljedeće korake kako to možemo lako učiniti.
Za to ću prvo napraviti padajuću traku za jedinstvena imena. Zatim ću napraviti novu korisnički definiranu funkciju “ LastItemLookup ” koristeći VBA koju ćemo koristiti da pronađemo posljednje pojavljivanje.
Korak 1 :
➦ Prvo kopirajte jedinstvena imena s glavnog lista na novi list.
Korak 2:
➦ Zatim idite na glavni list. Aktivirajte bilo koju novu ćeliju. Izabrao sam E5.
➦ Kliknite na Podaci > Alati za podatke > Validacija podataka.
Pojaviće se dijaloški okvir .
Korak 3:
➦ Odaberite Lista sa trake Dozvoli .
➦ Zatim pritisnite ikonu otvori na Izvor bar.
Korak 4:
➦ Nakon toga idite na svoj novi list i odaberite jedinstvena imena.
➦ Pritisnite OK
Pogledajte znak strelica nadole prikazan na desnoj strani te ćelije. Klikom ovdje možete odabrati bilo koje ime. To će nam uštedjeti vrijeme jer nećemo morati svaki put upisivati imena.
Sada ćemo napraviti novu funkciju pod nazivom LastItemLookup sa Excel VBA.
Korak 5:
➦ R kliknite desnim tasterom miša vašim mišem na naziv lista.
➦ Odaberite Prikaži kod iz kontekstnog menija .
Otvorit će se prozor VBA .
Korak 6:
➦ Unesite date kodoveispod:
5555
Korak 7:
➦ Zatim pritisnite dugme za reprodukciju da pokrenete kodove. Pojavit će se dijaloški okvir pod nazivom Makroi .
➦ Kliknite Pokreni .
Naša nova funkcija je sada spremna.
Korak 8:
➦ Sada se vratite na radni list.
➦ Aktivirajte Ćeliju F5
➦ Unesite formulu datu ispod sa novom funkcijom.
=LastItemLookup(E5,B5:C13,2)
➦ Pritisnite Enter da biste dobili rezultat zadnjeg pojavljivanja za Ron .
Sada kada odaberete ime bilo kojeg prodavca, dobit ćete njegovu odgovarajuću vrijednost posljednjeg pojavljivanja.
Zaključak
Nadam se da će sve gore opisane metode biti dovoljno dobre za traženje posljednje vrijednosti u koloni. Slobodno postavite bilo kakva pitanja u odjeljku za komentare i pošaljite mi povratne informacije