Tabloya naverokê
Dersdar rave dike ka meriv çawa Excel VLOOKUP-ê hesas dike, çend formulên din ên ku mesela nivîsê ji hev vediqetînin destnîşan dike, û hêz û sînorên her fonksiyonê destnîşan dike.
Ez texmîn dikim ku her Bikarhênerê Excel dizane ku kîjan fonksiyonê li Excel lêgerînek vertîkal dike. Rast, ew VLOOKUP e. Lêbelê, pir hindik kes pê dizanin ku VLOOKUP-a Excel-ê ne hesas e, yanî ew tîpên piçûk û UPPERCASE wekî heman tîpan dihesibîne.
Li vir mînakek bilez heye ku nekaribûna VLOOKUP-ê di ferqkirina hinareyên nivîsê de destnîşan dike. Bifikirin ku we di hucreya A2 de "bill" û di A4 de "Bill" heye. Formula jêrîn dê "bill" bigire ji ber ku ew di rêza lêgerînê de yekem tê û ji B2 nirxek lihevhatî vedigerîne.
=VLOOKUP("Bill", A2:B4, 2, FALSE)
Di vê yekê de bêtir gotar, ez ê rêyek nîşanî we bidim ku hûn VLOOKUP-ê hestiyar bikin. Her weha em ê çend fonksiyonên din jî bikolin ku dikarin di Excel de lihevhatinek hesas-doze bikin.
Formula VLOOKUP-ya hesas-qeyde
Wek ku li jor hatî behs kirin, formula VLOOKUP-ya adetî halê nameyê nas nake. Lêbelê, rêyek heye ku meriv Excel VLOOKUP-ê hesas bike, wek ku di mînaka jêrîn de tê xuyang kirin.
Bifikirin ku we di stûna A de Nasnameyên babetê hene û hûn dixwazin nirx û şîroveya babetê bikşînin. ji stûnên B û C. Pirsgirêk ev e ku nasnameyan hem tîpên piçûk û hem jî yên mezin dihewîne. Mînakî, nirxên di A4 (001Tvci3u) û A5 (001Tvci3U) de tenê ditîpa paşîn, "u" û "U", bi rêzê ve.
Dema ku li "001Tvci3 U digerin", formula VLOOKUP standard 90$ derdixe ku bi "001Tvci3 u ve girêdayî ye. " ji ber ku ew berî "001Tvci3 U " di rêzika lêgerînê de tê. Lê ev ne ya ku hûn dixwazin, rast e?
=VLOOKUP(F2, A2:C7, 2, FALSE)
Ji bo ku di Excel de lêgerînek hesas a dozê pêk bînin, em VLOOKUP, CHOOSE û EXACT li hev dikin. fonksîyon:
VLOOKUP(RAST, HILBIJARTIN({1,2}, TEXACT( nirx_lookup, array_lookup), array_vegere), 2, 0)Vê formula gelemperî di hemî rewşan de bêkêmasî dixebite. Tewra hûn dikarin li ji rast ber bi çep bigerin, tiştekî ku formula VLOOKUP-a birêkûpêk nikare bike. Spas ji Pouriya re ji bo pêşniyara vê çareseriya sade û xweş!
Di rewşa me de, formulasên rastîn wiha ne.
Ji bo ku bihayê di F3 de bikişîne:
=VLOOKUP(TRUE, CHOOSE({1,2}, EXACT(F2, A2:A7), B2:B7), 2, FALSE)
Ji bo wergirtina şîroveya F4:
=VLOOKUP(TRUE, CHOOSE({1,2}, EXACT(F2, A2:A7), C2:C7), 2, FALSE)
Nîşe. Di hemî guhertoyên Excel de ji bilî Excel 365, ev tenê wekî formula array dixebite, ji ber vê yekê ji bîr mekin ku Ctrl + Shift + Enter bikirtînin da ku wê rast temam bikin. Di Excel 365 de, ji ber piştgirîkirina rêzikên dînamîkî, ew jî wekî formula birêkûpêk dixebite.
Ev formula çawa dixebite:
Beşa bingehîn a ku bixapîne formula CHOOSE ya bi EXACT hêlîn e:
CHOOSE({1,2}, EXACT(F2, A2:A7), C2:C7)
Li vir, fonksiyona EXACT nirxa di F2 de li hember her nirxek di A2:A7 de dide ber hev û TRUE vedigerîne ger ew tam yek bin tevî kêşeya herfê,DEWLET Wekî din:
{FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}
Ji bo argumana num_index_ ya CHOOSE, em rêzika domdar {1,2} bikar tînin. Di encamê de, fonksiyon nirxên mentiqî yên ji rêza jorîn û nirxên ji C2:C7 di nav rêzek du-alî de bi vî rengî berhev dike:
{FALSE,155;FALSE,186;FALSE,90;TRUE,54;FALSE,159;FALSE,28}
Fonksiyon VLOOKUP wê ji wir digire. û li nirxa lêgerînê (ku RAST e) di stûna 1emîn a rêzika 2-alî de (ji hêla nirxên mentiqî ve tê temsîl kirin) digere û ji stûna 2yemîn berhevokek vedigerîne, ku ev bihayê ku em lê digerin:
VLOOKUP(TRUE, {FALSE,155;FALSE,186;FALSE,90;TRUE,54;FALSE,159;FALSE,28}, 2, 0)
Formula XLOOKUP-ê ya hesas-qezenc
Aboneyên Microsoft 365 dikarin li Excel bi formulek hêsatir jî lêgerînek hesas a dozê bikin. Wekî ku hûn dikarin texmîn bikin, ez li ser peykerek bihêztir a VLOOKUP - fonksiyona XLOOKUP-ê diaxivim.
Ji ber ku XLOOKUP li ser lêgerînê kar dike û rêzikên ji hev vedigerîne, hewcedariya me bi hîleka rêza du-alî ya berê tune. mînak. Bi tenê, EXACT ji bo argumana lookup_array bikar bînin:
XLOOKUP(RAST, EXACT( nirx_lookup , array_lookup ), return_array , " Nayê dîtin")Argumana dawîn ("Nehat dîtin") vebijarkî ye. Ew tenê diyar dike ku heke hevhev neyê dîtin dê çi nirx vegere. Heke hûn jê dernekevin, wê hingê xeletiyek standard #N/A dê were vegerandin heke ku formula tiştek nebîne.
Ji bo tabloya meya nimûne, ev formulasên XLOOKUP-ê yên hesas in ku werin bikar anîn.
Ji bo bidestxistina bihayê di F3:
=XLOOKUP(TRUE, EXACT(F2, A2:A7), B2:B7, "Not found")
Ji bo derxistinaşîroveya F4:
=XLOOKUP(TRUE, EXACT(F2, A2:A7), C2:C7, "Not found")
Ev formula çawa dixebite:
Wekî mînaka berê, EXACT vedigere komek ji nirxên TRUE û FALSE, ku TRUE lihevhatinên hesas ên dozê nîşan dide. XLOOKUP li rêzika jorîn ji bo nirxa TRUE digere û ji return_array hevberdanê vedigerîne. Ji kerema xwe bala xwe bidinê, heke di stûna lêgerînê de du an jî zêdetir heman nirx hebin (tevlî mesela tîpan), formula dê hevberdana yekem a ku hatiye dîtin vegerîne.
Sînordariya XLOOKUP : tenê heye di Excel 365 û Excel 2021 de.
SUMPRODUCT - Lêgerîna hesas a dozê ji bo vegerandina hejmarên lihevhatî
Wekî ku hûn ji sernivîsê fêm dikin, SUMPRODUCT hîn fonksiyonek din a Excel e ku dikare lêgerînek hesas-doze bike. , lê ew dikare tenê nirxên hejmarî vegerîne. Heger ev ne halê we ye, wê hingê berê xwe bidin mînaka INDEX MATCH ya ku ji bo hemî cûreyên daneyê çareseriyek peyda dike.
Wekî ku hûn jî dizanin, SUMPRODUCT-a Excel pêkhateyên di rêzikên diyarkirî de zêde dike û berhevoka hilberan vedigerîne. Ji ber ku em lêgerînek hesas a dozê dixwazin, em fonksiyona EXACT bikar tînin da ku rêza yekem bi dest bixin:
=SUMPRODUCT((EXACT(A2:A7,F2) * (B2:B7)))
Mixabin, fonksiyona SUMPRODUCT nikare lihevhatinên nivîsê vegerîne ji ber ku nirxên nivîsê nayên zêdekirin. Di vê rewşê de, hûn ê #VALUE bistînin! Di dîmena jêrîn de xeletiyek mîna di hucreya F4-ê de:
Ev formula çawa dixebite:
Mîna di mînaka VLOOKUP de, TEXACT kontrolên fonksiyonênirxa di F2 de li hember hemî nirxên A2:A7-ê û ji bo hevberdanên hestiyar TRUE vedigerîne, wekî din FALSE:
SUMPRODUCT(({FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}*{155;186;90;54;159;28}))
Di piraniya formulan de, Excel TRUE bi 1 û FALSE bi 0 dinirxîne. Ji ber vê yekê, dema ku SUMPRODUCT hêmanên her du rêzan di heman cihan de zêde dike, hemî nelihev (FALSE) dibin sifir:
SUMPRODUCT({0;0;0;54;0;0})
Di encamê de, formula jimareyek ji stûna B ya ku di stûna A-yê de bi hevberdana tam hesas-qeydkirî re têkildar e.
Sînordariya SUMPRODUCT : tenê dikare nirxên hejmarî vegerîne.
MATCH INDEX - lêgerîna hesas a dozê ji bo hemû cureyên daneyan
Di dawiyê de, em nêzîkê bidestxistina formula lêgerînê ya bêsînor in ku di hemî guhertoyên Excel û li ser hemî berhevokên daneyê de dixebite.
Ev mînak ne tenê ji ber ku ya herî baş ji bo ya dawî tê hilanîn, lê di heman demê de ji ber ku zanîna ku we di mînakên berê de bi dest xistiye dibe ku ji we re bibe alîkar ku hûn formula MATCH INDEX-ê ya hestiyar çêtir fam bikin.
Pêkanîna fonksiyonên INDEX û MATCH bi gelemperî têne bikar anîn. li Ex cel ji bo VLOOKUP-ê wekî alternatîfek maqûltir û pirrengtir e. Gotara jêrîn karekî baş dike (hêvî dikim :) rave dike ka ev her du fonksiyon çawa bi hev re dixebitin - Li şûna VLOOKUP-ê INDEX MATCH bikar bînin.
Li vir, ez ê tenê xalên sereke bi bîr tînim:
- Fonksiyon MATCH li nirxa lêgerînê ya di nav rêza lêgerînê ya diyarkirî de digere û pozîsyona xwe ya têkildar vedigerîne.
- Rojberpozîsyona nirxa lêgerînê rasterast diçe argumana row_num ya fonksiyona INDEX-ê û ferman dide ku ew nirxek ji wê rêzê vegerîne.
Ji bo formula ku halê nivîsê nas bike, hûn tenê pêdivî ye ku fonksiyonek din li berhevoka klasîk a INDEX MATCH zêde bike. Eşkere ye, hûn ji nû ve fonksiyona EXACT hewce ne:
INDEX( vegera_array , MATCH(RAST, EXACT( nirx_lêgerîn , array_lookup ), 0))Formula rastîn di F3 de ev e:
=INDEX(B2:B7, MATCH(TRUE, EXACT(A2:A7, F2), 0))
Di F4 de, em vê yekê bikar tînin:
=INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0))
Ji kerema xwe ji bîr mekin ku ew tenê wekî kar dike di hemî guhertoyên ji bilî Excel 365 de formûleyek rêzê heye, ji ber vê yekê pê ewle bin ku bi pêl bişkokên Ctrl + Shift + Enter bi hev re têkevin. Heke rast were kirin, formula dê di nav çîpên çîçek de mîna ku di dîmena jêrîn de tê xuyang kirin:
Ev formula çawa dixebite:
Mîna hemû mînakên berê, EXACT ji bo her nirxek di A2:A7 de RAST vedigerîne ku tam bi nirxa F2-ê re têkildar e. Ji ber ku em TRUE ji bo lookup_value ya MATCH-ê bikar tînin, ew pozîsyonek nisbî ya lihevhatina rast-hesas a dozê vedigerîne, ya ku bi rastî hewcedariya INDEX-ê heye ku hevberdanê ji B2:B7 vegerîne.
Formula lêgerînê ya pêşkeftî ya hestiyar
Formula INDEX MATCH ya ku li jor hatî behs kirin bêkêmasî xuya dike, rast? Lê di rastiyê de, ne wisa ye. Bihêle ez çima nîşanî we bidim.
Bifikirin ku di stûna vegerê de şaneyek ku bi nirxa lêgerînê re têkildar e vala ye. Dê formula çi vegere? Netişt.Û naha, em bibînin ka ew bi rastî çi vedigere:
=INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0))
Wey, formula sifirek vedigerîne! Dibe ku, dema ku bi tenê bi nirxên nivîsê re mijûl dibin bi rastî ne girîng e. Lêbelê, heke pelgeya xebata we jimareyan hebe û hin ji wan sifirên rastîn bin, ev pirsgirêkek e.
Bi rastî, hemî formulên lêgerînê yên din ên ku berê hatine nîqaş kirin bi heman rengî tevdigerin. Lê naha hûn formulek bêkêmasî dixwazin, ne wusa?
Ji bo ku formula INDEX MATCH-ya hestiyar bi tevahî bêkêmasî bibe, hûn wê di fonksiyona IF-ê de bipêçin ku kontrol dike ka şaneyek veger vala ye û tiştek venagerîne. ev rewş:
=IF(INDIRECT("C"&(1+MATCH(TRUE,EXACT(A2:A7, F2), 0)))"", INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0)), "")
Di formula jorîn de:
- "C" stûna vegerê ye.
- "1" hejmar e. ku pozîsyona têkildar ya şaneya ku ji hêla fonksiyona MATCH ve hatî vegerandin vediguherîne navnîşana hucreya rastîn .
Mînakî, rêzika lêgerînê di fonksiyona meya MATCH de A2: A7 e, tê wateya pozîsyona têkildar a hucreya A2 "1" e, ji ber ku ev şaneya yekem e di rêzê de. Lê di rastiyê de, rêza lêgerînê di rêza 2 de dest pê dike. Ji bo telafîkirina cudahiyê, em 1 lê zêde dikin, ji ber vê yekê fonksiyona INDIRECT dê nirxek ji şaneya rastê vegerîne.
Wêneyên dîmenê yên jêrîn INDEX-ya hesas-qezenc a çêtir nîşan didin. Formula MATCH di çalakiyê de ye.
Heke şaneya vegerê vala be, formula tiştek dernakeve (rêzek vala):
Heke di şaneya vegerê de sifirek hebe. , formula 0 vedigere:
Heke hûn bixwazinDema ku şaneya vegerê vala ye hin peyam nîşan bide, di argumana paşîn a IF de rêzek vala ("") bi hin nivîsê biguhezîne:
=IF(INDIRECT("C"&(1+MATCH(TRUE, EXACT(A2:A7, F2), 0)))"", INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0)), "There is nothing to return, sorry.")
VLOOKUP-ya hesas bi rêgezek hêsan bikin
Bikarhênerên Suite Ultimate me ji bo Excel amûrek taybetî heye ku lêgerîna li tabloyên mezin û tevlihev hêsantir û bê stres dike. Tiştê herî baş ew e ku Merge Two Tables vebijarkek hesas a dozê heye, û mînaka jêrîn wê di çalakiyê de nîşan dide.
Bifikirin ku hûn dixwazin Qty bikşînin. ji tabloya Lêgerîn ber bi tabloya Sereke ve li ser bingeha Nasnameyên Babetê yên yekta:
Tiştê ku hûn dikin ew e ku hûn Tabloyên Hevgirtinê bimeşînin. sêrbaz bike û van gavan pêk bîne:
- Tabloya sereke ya ku tê de daneyên nû bikişîne hilbijêrin.
- Tabloya lêgerînê ya ku hûn li daneyên nû lê bigerin hilbijêrin.
- Yek an çend stûnên sereke hilbijêrin (Nasnameya babetê di doza me de). Û pê ewle bin ku hûn qutiya Lihevhatina hesas a dozeyê kontrol bikin.
Piştî demek şûnda, hûn ê encama xwestinê bistînin :)
Bi vî rengî meriv çawa li Excel-ê binihêre ku doza nivîsê li ber çavan digire. Ji bo xwendinê ez spasiya te dikim û hêvî dikim ku hefteya pêş me we li ser bloga xwe bibînim!
Ji bo daxistinê pirtûka xebatê pratîk bikin
Mînakên VLOOKUP-ê yên hesas (pelê xlsx)