Sisukord
VLOOKUP on Excelis väga populaarne funktsioon, mis viitab vertikaalsele otsingule. Me võime kasutada sisseehitatud VLOOKUP funktsiooni või võime isegi teha omaenda valemeid, mis töötavad vertikaalse otsinguna, et tagastada väärtus dünaamilisemate kriteeriumidega. Selles artiklis näitan, kuidas leida viimane väärtus veerus koos VLOOKUP Excelis.
Lae alla praktikaraamat
Laadige alla Exceli töövihik, mida me kasutasime selle artikli koostamisel.
VLOOKUP Viimane väärtus veerus.xlsxVLOOKUP-funktsiooni kasutamine veeru viimase väärtuse leidmiseks
Tutvustame kõigepealt meie töövihikut. Selles andmelehes olen kasutanud 3 veergu ja 10 rida esitada mõnede müüjate müügisummad vastavalt vastavatele kuupäevadele.
Selles meetodis leiame väärtuse viimase esinemise, kasutades funktsiooni VLOOKUP funktsioon . VLOOKUP tähistab Vertikaalne otsing '. See on funktsioon, mis paneb Exceli otsima teatud väärtust veerus. Siin on meil 3 erinevat müügisummat Bill. Nüüd leiame tema viimase müügi summa aastal Cell G5
Sammud :
➦ Aktiveeri Cell G5, sisestage alljärgnev valem:
=VLOOKUP(F5,C5:D13,2)
➦ Vajuta Sisesta nuppu ja saate tema müügi viimase esinemise.
Aga VLOOKUP ei anna õiget vastust sorteerimata andmete puhul ligikaudses režiimis. Vt allolevat pilti.
Ja kui me kasutame täpne vaste neljandaks argumendiks näitab ta esimest vastet nagu alloleval pildil. Kuna vlookup kasutab binaarset otsingut. Nii et kui ta leiab väärtuse, mis on suurem kui otsinguväärtus, siis jõuab ta tagasi eelmise väärtuse näitamiseks, vt seda alloleval pildil.
Nii et selle olukorra ületamiseks sorteerimata andmete puhul viimase esinemise leidmiseks peame kasutama otsingufunktsioone või muid kombineeritud valemeid. Neid meetodeid arutame nüüd järgmistes osades.
Alternatiivid VLOOKUP-funktsioonile, et leida viimane väärtus veerus
Nüüd rakendame nelja alternatiivset meetodit veeru viimase väärtuse leidmiseks.
Meetod 1: Kasutage funktsiooni LOOKUP, et leida viimane väärtus veerus
Siin leiame viimase väärtuse veerus koos funktsioon LOOKUP Excelis. LOOKUP funktsiooni kasutatakse ühe veeru või rea otsimiseks, et leida teatud väärtus samast kohast teises veerus või reas. Ma leian viimase müügisumma siinsamas Lahter G4.
Sammud:
➦ Aktiveeri Cell G4.
➦ Sisestage allpool esitatud valem:
=LOOKUP(2,1/(D:D""),D:D)
➦ Seejärel vajutage Sisesta nuppu ja saate viimase väärtuse.
👉 Valemite jaotamine:
➥ D:D""
Siinkohal kontrollitakse, kas lahtrid Veerg D on tühjad või mitte. See tagastab kui-
{FALSE;FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;FALSE.....}
➥ 1/(D:D"")
Me jagasime 1 Kuna FALSE tähendab, et 0 ja TRUE tähendab 1 nii et tulemus on järgmine:
{#DIV/0!;#DIV/0!;#DIV/0!;1;1;1;1;1;1;1;1;1;1;#DIV/0!;#DIV/0!}
➥ LOOKUP(2,1/(D:D""),D:D)
Ma olen seadnud otsinguväärtuse 2, sest otsingufunktsioon leiab 2 läbi veeru, kui ta jõuab veani, siis pöördub ta tagasi oma lähima väärtuse 1 juurde ja näitab seda tulemust. See tagastab as-
367
Meetod 2: Kasutage INDEX ja MATCH funktsioone veeru viimase väärtuse leidmiseks
Siinkohal kasutame kombinatsiooni INDEX ja MATCH funktsioonid. Funktsioon INDEX tagastab väärtuse või viite väärtusele tabelis või vahemikus. Ja funktsioon MATCH kasutatakse määratud elemendi otsimiseks vahemikus ja seejärel tagastab selle elemendi suhtelise asukoha vahemikus.
Sammud:
➦ Sisestage alljärgnev valem alljärgnevasse tabelisse Cell G5
=INDEX(D5:D13,MATCH(F5,C5:C13,1))
➦ Hit Sisesta nupp.
👉 Kuidas valem töötab:
➥ MATCH(F5,C5:C13,1)
Siin funktsioon MATCH kasutatakse, et leida väärtus Lahter F5 elemendid, mis on sorteeritud massiivi kasvavas järjekorras C5:C13. Kolmanda argumendi '1' seadmine näitab ligikaudset kokkulangevust. Nüüd tagastab funktsioon nagu-
6
See näitab tegelikult rea numbrit, mis on loetud esimesest kirjest alates.
➥ INDEX(D5:D13,MATCH(F5,C5:C13,1))
Ja funktsioon INDEX annab vastava müügi ( D5:D13) vastavalt eelmisele sobitusele massiivi ( C5:C13) mis tagastab nagu-
367
See on tegelikult viimane juhtum Lahter F5
Meetod 3: INDEX, MAX, SUMPRODUCT ja ROW funktsioonide kombinatsioon veeru viimase väärtuse leidmiseks
Nüüd teeme ülesande kombinatsiooniga INDEX, MAX, SUMPRODUCT ja ROW funktsioonid. Funktsioon ROW leiab rea numbrid. SUMPRODUCT on funktsioon, mis korrutab lahtrite või massiivi vahemikku ja tagastab produktide summa. Funktsioon MAX leiab maksimaalse arvu. Ja INDEX funktsioon tagastab väärtuse või viite väärtusele tabelis või vahemikus.
Sammud:
➦ Võimaldage redigeerimine Lahter F7
➦ Kopeeri ja kleebi allpool esitatud valem:
=INDEX($C$5:$C$13,SUMPRODUCT(MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))-4)))
➦ Ja vajutage Sisesta nupp.
👉 Kuidas valem töötab:
➥ RIDA($B$5:$B$13)
Funktsioon ROW näitab massiivi rea numbri, mis tagastatakse kui-
{5;6;7;8;9;10;11;12;13}
➥ ($E$7=$B$5:$B$13)
Siin Raku E7 on meie otsinguväärtus ja see valem vastab sellele läbi massiivi B5:B13 . siis see naaseb nagu-
{VALE;FALSE;FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;TRUE}
➥ RIDA($B$5:$B$13)*($E$7=$B$5:$B$13)
See on kahe eelneva valemi korrutamine, mis korrutab tegelikult vastavad rea numbrid. VALE tähendab 0 ja TÕELINE tähendab 1 Nii et pärast korrutamist tagastab see kui-
{0;0;0;0;9;0;0;0;13}
➥ MAX(RIDA($B$5:$B$13)*($E$7=$B$5:$B$13))
The MAX funktsioon leiab maksimaalse väärtuse eelmisest tulemusest, mis tagastatakse kui
13
➥ SUMPRODUCT(MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))-4)
Nüüd on SUMPRODUCT funktsiooni kasutatakse massiivi rea numbri leidmiseks. . Kuna meie nimekiri algab 5. rida edasi, 4 on maha arvatud. Seega on viimase esinemise asukoht Bill on 9 meie nimekirjas, nii et valem tagastab nagu-
9 .
➥ INDEX($C$5:$C$13,SUMPRODUCT(MAX(ROW($B$5:$B$13)*($E$7=$B$5:$B$13))-4)))
INDEX funktsiooni kasutatakse viimase sobiva nime müügi leidmiseks. Ja see tagastab kui-
563
See on meie viimane esinemine Bill.
Meetod 4: Kasutage Exceli VBA-d väärtuse viimase esinemise leidmiseks veerus
Kui teile meeldib Excelis kodeerida, siis see meetod sobib teile. Me saame eelmist toimingut teha ka VBA meetodi abil. Vaatame läbi järgmised sammud, kuidas me seda lihtsalt teha saame.
Selleks teen kõigepealt rippmenüü unikaalsete nimede jaoks. Seejärel teen uue kasutaja poolt määratud funktsiooni " LastItemLookup " kasutades VBA mida me kasutame viimase esinemise leidmiseks.
1. samm:
➦ Kõigepealt kopeerige unikaalsed nimed põhilehelt uuele lehele.
2. samm:
➦ Seejärel mine põhilehele. Aktiveeri mõni uus lahter. Ma valisin E5.
➦ Klõpsake Andmed> Andmetööriistad> Andmete valideerimine.
A dialoogiboks ilmub.
3. samm:
➦ Valige Loetelu alates Luba baar.
➦ Seejärel vajutage avatud ikoon alates Allikas baar.
4. samm:
➦ Pärast seda minge oma uuele lehele ja valige unikaalsed nimed.
➦ Press OK
Vaata allapoole nool märk kuvatakse selle lahtri paremal küljel. Siin klõpsates saab valida suvalise nime. See säästab meie aega, sest me ei pea iga kord nimesid tippima.
Nüüd teeme uue funktsiooni nimega LastItemLookup Exceliga VBA.
5. samm:
➦ R ight-click hiirega lehe nimele.
➦ Valige Vaata koodi alates kontekstmenüü .
A VBA avaneb aken.
6. samm:
➦ Sisestage allpool esitatud koodid:
Option Explicit Sub vlookup_last() End Sub Function LastItemLookup(Lookupvalue As String, LookupRange As Range, ColumnNumber As Integer) Dim x As Long For x = LookupRange.Columns(1).Cells.Count To 1 Step -1 If Lookupvalue = LookupRange.Cells(x, 1) Then LastItemLookup = LookupRange.Cells(x, ColumnNumber) Exit Function End If Next x End Function
7. samm:
➦ Seejärel vajutage koodide käivitamiseks nuppu play. A dialoogiboks nimega Makros ilmub.
➦ Klõpsake Käivita .
Meie uus funktsioon on nüüd valmis.
8. samm:
➦ Nüüd naaske oma töölehe juurde.
➦ Aktiveeri Lahter F5
➦ Sisestage allpool esitatud valem koos uue funktsiooniga.
=LastItemLookup(E5,B5:C13,2)
➦ Press Sisesta et saada viimase esinemise tulemus Ron .
Kui nüüd valite mõne müüja nime, siis saate tema vastava viimase esinemise väärtuse.
Kokkuvõte
Ma loodan, et kõik eespool kirjeldatud meetodid on piisavalt hästi vlookup viimane väärtus veerus. Küsige julgelt küsimusi kommentaaride sektsioonis ja palun andke mulle tagasisidet