Jedwali la yaliyomo
Mafunzo yanafafanua jinsi ya kufanya Excel VLOOKUP kuwa nyeti kwa kadiri, huonyesha fomula zingine chache zinazotofautisha herufi za maandishi, na kuashiria uwezo na mapungufu ya kila chaguo la kukokotoa.
Nadhani kila chaguo la kukokotoa. Mtumiaji wa Excel anajua ni chaguo gani hufanya ukaguzi wa wima katika Excel. Kweli, ni VLOOKUP. Hata hivyo, ni watu wachache sana wanaofahamu kuwa VLOOKUP ya Excel haihisi herufi kubwa, kumaanisha kwamba inachukulia herufi ndogo na KUU kama herufi zinazofanana.
Huu hapa ni mfano wa haraka unaoonyesha kutoweza kwa VLOOKUP kutofautisha herufi kubwa. Tuseme ikiwa una "bili" katika seli A2 na "Bill" katika A4. Fomula iliyo hapa chini itashika "bili" kwa sababu inakuja kwanza katika safu ya utafutaji na kurudisha thamani inayolingana kutoka B2.
=VLOOKUP("Bill", A2:B4, 2, FALSE)
Zaidi katika hili. makala, nitakuonyesha njia ya kufanya VLOOKUP iwe nyeti kwa kadiri. Pia tutachunguza vitendaji vingine vichache vinavyoweza kufanya ulinganifu ambao ni nyeti kwa ukubwa katika Excel.
fomula ya VLOOKUP nyeti kwa kesi
Kama ilivyotajwa hapo juu, fomula ya kawaida ya VLOOKUP haitambui kesi ya barua. Hata hivyo, kuna njia ya kufanya Excel VLOOKUP iwe nyeti kwa ukubwa, kama inavyoonyeshwa katika mfano ulio hapa chini.
Tuseme una Vitambulisho vya Kipengee kwenye safu A na unataka kuvuta bei ya bidhaa na kutoa maoni. kutoka safu wima B na C. Tatizo ni kwamba vitambulisho vinajumuisha herufi ndogo na herufi kubwa. Kwa mfano, thamani katika A4 (001Tvci3u) na A5 (001Tvci3U) hutofautiana tu katikaherufi ya mwisho, "u" na "U", mtawalia.
Unapotafuta "001Tvci3 U ", fomula ya kawaida ya VLOOKUP inatoa $90 ambayo inahusishwa na "001Tvci3 u " kwa sababu inakuja kabla ya "001Tvci3 U " katika safu ya utafutaji. Lakini hii sio unayotaka, sivyo?
=VLOOKUP(F2, A2:C7, 2, FALSE)
Ili kufanya uchunguzi nyeti katika Excel, tunachanganya VLOOKUP, CHAGUA na EXACT vitendaji:
VLOOKUP(TRUE, CHAGUA({1,2}, EXACT( thamani_ya_kuangalia, safu_ya_kuangalia), return_array), 2, 0)Mfumo huu wa jumla hufanya kazi kikamilifu katika hali zote. Unaweza hata kuangalia juu kutoka kulia kwenda kushoto , jambo ambalo fomula ya kawaida ya VLOOKUP haiwezi kufanya. Hongera Pouriya kwa kupendekeza suluhisho hili rahisi na maridadi!
Kwa upande wetu, fomula halisi huenda kama ifuatavyo.
Kuvuta bei katika F3:
=VLOOKUP(TRUE, CHOOSE({1,2}, EXACT(F2, A2:A7), B2:B7), 2, FALSE)
Ili kuleta maoni F4:
=VLOOKUP(TRUE, CHOOSE({1,2}, EXACT(F2, A2:A7), C2:C7), 2, FALSE)
Kumbuka. Katika matoleo yote ya Excel isipokuwa Excel 365, hii inafanya kazi tu kama fomula ya safu, kwa hivyo kumbuka kubonyeza Ctrl + Shift + Enter ili kuikamilisha ipasavyo. Katika Excel 365, kwa sababu ya usaidizi wa safu zinazobadilika, inafanya kazi pia kama fomula ya kawaida.
Jinsi fomula hii inavyofanya kazi:
Sehemu kuu inayofanya hila ni CHOOSE fomula iliyo na kiota EXACT:
CHOOSE({1,2}, EXACT(F2, A2:A7), C2:C7)
hapa, chaguo za kukokotoa za EXACT hulinganisha thamani katika F2 dhidi ya kila thamani katika A2:A7 na kurejesha TRUE ikiwa ni sawa kabisa ikijumuisha herufi,FALSE vinginevyo:
{FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}
Kwa index_num hoja ya CHOOSE, tunatumia safu thabiti {1,2}. Kama matokeo, chaguo za kukokotoa huchanganya thamani za kimantiki kutoka kwa safu iliyo hapo juu na thamani kutoka C2:C7 hadi safu ya pande mbili kama hii:
{FALSE,155;FALSE,186;FALSE,90;TRUE,54;FALSE,159;FALSE,28}
Kitendaji cha VLOOKUP kinaichukua kutoka hapo. na hutafuta thamani ya utafutaji (ambayo ni TRUE) katika safu ya 1 ya safu ya 2-dimensional (inayowakilishwa na thamani za kimantiki) na kurudisha inayolingana kutoka safu ya 2, ambayo ni bei tunayotafuta:
VLOOKUP(TRUE, {FALSE,155;FALSE,186;FALSE,90;TRUE,54;FALSE,159;FALSE,28}, 2, 0)
Mfumo wa XLOOKUP nyeti kwa kesi
Wasajili wa Microsoft 365 wanaweza kufanya uchunguzi nyeti katika Excel kwa kutumia hata fomula rahisi zaidi. Kama unavyoweza kukisia, ninazungumza kuhusu mrithi mwenye nguvu zaidi wa VLOOKUP - chaguo la kukokotoa la XLOOKUP.
Kwa sababu XLOOKUP inafanya kazi katika kutafuta na kurejesha safu kando, hatuhitaji hila ya safu-mbili kutoka ya awali. mfano. Kwa urahisi, tumia EXACT kwa hoja ya lookup_array :
XLOOKUP(TRUE, EXACT( thamani_ya_lookup , lookup_array ), return_array , " Haijapatikana")Hoja ya mwisho ("Haipatikani") ni ya hiari. Inafafanua tu ni thamani gani ya kurejesha ikiwa hakuna inayolingana inayopatikana. Ukiiacha, basi hitilafu ya kawaida ya #N/A itarejeshwa iwapo fomula haitapata chochote.
Kwa jedwali letu la sampuli, hizi ndizo fomula za XLOOKUP ambazo ni nyeti sana za kutumia.
Ili kupata bei katika F3:
=XLOOKUP(TRUE, EXACT(F2, A2:A7), B2:B7, "Not found")
Ili kutoamaoni F4:
=XLOOKUP(TRUE, EXACT(F2, A2:A7), C2:C7, "Not found")
Jinsi fomula hii inavyofanya kazi:
Kama ilivyo katika mfano uliopita, EXACT inarejesha safu ya thamani za TRUE na FALSE, ambapo TRUE inawakilisha ulinganifu unaozingatia ukubwa. XLOOKUP hutafuta safu iliyo hapo juu kwa thamani ya TRUE na kurudisha inayolingana kutoka kwa return_array . Tafadhali kumbuka, ikiwa kuna thamani mbili au zaidi zinazofanana kabisa katika safu wima ya kutafuta (pamoja na herufi), fomula itarudisha inayolingana ya kwanza iliyopatikana.
Kikomo cha XLOOKUP : kinapatikana pekee. katika Excel 365 na Excel 2021.
SUMPRODUCT - tafuta nyeti kwa kesi ili kurudisha nambari zinazolingana
Kama unavyoelewa kutoka kwa kichwa, SUMPRODUCT bado ni chaguo jingine la kukokotoa la Excel ambalo linaweza kuchunguza hali nyeti. , lakini inaweza kurudisha thamani za nambari pekee. Ikiwa hii si kesi yako, basi nenda kwenye mfano wa INDEX MATCH ambao hutoa suluhu kwa aina zote za data.
Kama unavyojua pengine, SUMPRODUCT ya Excel huzidisha vipengele katika safu zilizobainishwa na kurudisha jumla ya bidhaa. Kwa kuwa tunataka uchunguzi nyeti wa kesi, tunatumia chaguo la kukokotoa EXACT kupata safu ya kwanza:
=SUMPRODUCT((EXACT(A2:A7,F2) * (B2:B7)))
Samahani, chaguo la kukokotoa la SUMPRODUCT haliwezi kurejesha ulinganifu wa maandishi kwa vile thamani za maandishi haziwezi kuzidishwa. Katika hali hii, utapata #VALUE! hitilafu kama vile katika kisanduku F4 kwenye picha ya skrini iliyo hapa chini:
Jinsi fomula hii inavyofanya kazi:
Kama katika mfano wa VLOOKUP, EXACT ukaguzi wa utendakazithamani katika F2 dhidi ya thamani zote katika A2:A7 na kurejesha TRUE kwa kesi nyeti zinazolingana, FALSE vinginevyo:
SUMPRODUCT(({FALSE;FALSE;FALSE;TRUE;FALSE;FALSE}*{155;186;90;54;159;28}))
Katika fomula nyingi, Excel hutathmini TRUE hadi 1 na FALSE hadi 0. Kwa hivyo, SUMPRODUCT inapozidisha vipengele vya safu mbili katika nafasi sawa, zote zisizolingana (FALSE) huwa sufuri:
SUMPRODUCT({0;0;0;54;0;0})
Kama matokeo, fomula hurejesha nambari kutoka. safu wima B ambayo inalingana na ulinganifu kamili wa kesi katika safu wima A.
Kikomo cha SUMPRODUCT : kinaweza kurejesha thamani za nambari pekee.
INDEX MATCH - uchunguzi nyeti kwa kadhi aina zote za data. bora huhifadhiwa kwa ajili ya mwisho, lakini pia kwa sababu ujuzi ambao umepata katika mifano iliyotangulia unaweza kukusaidia kuelewa fomula ya MATCH INDEX ambayo ni nyeti zaidi kwa kesi.
Mchanganyiko wa vitendaji vya INDEX na MATCH hutumiwa mara nyingi zaidi. katika Kut cel kama njia mbadala inayoweza kunyumbulika zaidi na inayoweza kutumika kwa VLOOKUP. Makala ifuatayo yanafanya kazi nzuri (kwa matumaini :) ikieleza jinsi vipengele hivi viwili vinavyofanya kazi pamoja - Kwa kutumia INDEX MATCH badala ya VLOOKUP.
Hapa, nitakukumbusha tu mambo muhimu:
- Kitendakazi cha MATCH hutafuta thamani ya kuangalia katika safu iliyobainishwa ya kuangalia na kurudisha nafasi yake inayolingana.
- Jamaa.nafasi ya thamani ya kuangalia huenda moja kwa moja kwenye safu_num hoja ya chaguo za kukokotoa INDEX ikiiagiza kurudisha thamani kutoka safu mlalo hiyo.
Ili fomula itambue kisanduku cha maandishi, wewe tu haja ya kuongeza chaguo la kukokotoa zaidi kwenye mchanganyiko wa kawaida wa INDEX MATCH. Ni wazi, unahitaji chaguo za kukokotoa EXACT tena:
INDEX( return_array, MATCH(TRUE, EXACT( lookup_value, lookup_array), 0))Mfumo halisi katika F3 ni:
=INDEX(B2:B7, MATCH(TRUE, EXACT(A2:A7, F2), 0))
Katika F4, tunatumia hii:
=INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0))
Tafadhali kumbuka kwamba inafanya kazi tu kama fomula ya safu katika matoleo yote isipokuwa Excel 365, kwa hivyo hakikisha umeiingiza kwa kubonyeza Ctrl + Shift + Enter vitufe pamoja. Ikifanywa kwa usahihi, fomula itafungwa katika viunga vilivyopindapinda kama inavyoonyeshwa kwenye picha ya skrini hapa chini:
Jinsi fomula hii inavyofanya kazi:
Kama katika mifano yote iliyotangulia, EXACT hurejesha TRUE kwa kila thamani katika A2:A7 inayolingana kabisa na thamani katika F2. Kwa kuwa tunatumia TRUE kwa lookup_value ya MATCH, inarejesha nafasi ya jamaa ya ulinganifu ambao ni nyeti kabisa, ambao ndio hasa INDEX inahitaji kurudisha kilingana kutoka kwa B2:B7.
Fomula ya juu ya kuangalia ambayo ni nyeti kwa kesi
Fomula iliyotajwa hapo juu ya INDEX MATCH inaonekana kamili, sivyo? Lakini kwa kweli, sivyo. Acha nikuonyeshe ni kwa nini.
Tuseme kisanduku katika safu wima ya kurejesha inayolingana na thamani ya utafutaji hakina kitu. Je! formula itarudisha nini? Hakuna kitu.Na sasa, hebu tuone inarejesha nini hasa:
=INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0))
Lo, fomula inarudisha sifuri! Labda, sio muhimu sana wakati wa kushughulika na maadili ya maandishi pekee. Hata hivyo, ikiwa laha yako ya kazi ina nambari na baadhi yao ni sufuri halisi, hili ni tatizo.
Kwa kweli, fomula nyingine zote za utafutaji zilizojadiliwa hapo awali zinatenda kwa njia sawa. Lakini sasa unataka fomula ifaayo, sivyo?
Ili kufanya fomula nyeti ya INDEX MATCH kamilifu kabisa, unaifunika katika chaguo la kukokotoa la IF ambalo hukagua kama kisanduku cha kurejesha hakina kitu na usirudishe chochote ndani. kesi hii:
=IF(INDIRECT("C"&(1+MATCH(TRUE,EXACT(A2:A7, F2), 0)))"", INDEX(C2:C7, MATCH(TRUE, EXACT(A2:A7, F2), 0)), "")
Katika fomula iliyo hapo juu:
- "C" ndio safu wima ya kurejesha.
- "1" ndiyo nambari ambayo hubadilisha nafasi inayohusiana ya seli iliyorejeshwa na chaguo la kukokotoa MATCH kuwa anwani halisi ya seli .
Kwa mfano, safu ya utafutaji katika chaguo la kukokotoa la MATCH. ni A2:A7, kumaanisha nafasi ya jamaa ya seli A2 ni "1", kwa sababu hii ndiyo seli ya kwanza katika safu. Lakini kwa uhalisia, safu ya utafutaji inaanza katika safu mlalo ya 2. Ili kufidia tofauti, tunaongeza 1, ili kitendakazi cha INDIRECT kitarejesha thamani kutoka kwa kisanduku sahihi.
Picha za skrini zilizo hapa chini zinaonyesha INDEX ambayo ni nyeti kwa kashi iliyoboreshwa. Fomula ya MATCH inafanya kazi.
Ikiwa kisanduku cha kurejesha kikiwa tupu, fomula haitoi chochote (mfuatano tupu):
Ikiwa kisanduku cha kurejesha kina sifuri. , fomula inarudi 0:
Ikiwa ungependaonyesha baadhi ya ujumbe wakati kisanduku cha kurejesha kiko wazi, badilisha mfuatano tupu ("") katika hoja ya mwisho ya IF na maandishi:
=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.")
Fanya VLOOKUP ambayo ni nyeti kwa ukubwa kwa njia rahisi
Watumiaji wa Ultimate Suite for Excel wana zana maalum ambayo hurahisisha kutafuta majedwali makubwa na changamano bila mafadhaiko. Jambo bora zaidi ni kwamba Unganisha Jedwali Mbili lina chaguo nyeti kwa kadiri, na mfano ulio hapa chini unaionyesha katika vitendo.
Tuseme unataka kuvuta Qty. kutoka kwenye jedwali la Tafuta hadi jedwali la Kuu kulingana na Vitambulisho vya Kipengee cha kipekee:
Unachofanya ni kutekeleza Majedwali ya Kuunganisha mchawi na utekeleze hatua hizi:
- Chagua jedwali kuu ambamo utaingiza data mpya.
- Chagua jedwali la kutafuta mahali pa kutafuta data mpya.
- Chagua safu wima moja au zaidi muhimu (Kitambulisho cha Kipengee kwa upande wetu). Na hakikisha kuwa umechagua kisanduku kinacholingana na kesi .
Muda mfupi baadaye, utapata matokeo unayotaka :)
Hiyo ndio jinsi ya kutafuta katika Excel kwa kuzingatia kesi ya maandishi. Ninakushukuru kwa kusoma na natumai kukuona kwenye blogu yetu wiki ijayo!
Jifunze kitabu cha mazoezi ili upakue
mifano ya VLOOKUP nyeti kwa kesi (.faili ya xlsx)