Kuboresha kitendakazi cha VLOOKUP

Yaliyomo

Jinsi ya kufunga parachute vizuri?

Faida. Toleo la 2, lililorekebishwa.

Wacha tuseme tunayo meza ifuatayo ya maagizo:

Kuboresha kitendakazi cha VLOOKUP

Tunahitaji kujua, kwa mfano, ni kiasi gani cha agizo la tatu la Ivanov au wakati Petrov alitekeleza mpango wake wa pili. Kitendaji cha VLOOKUP kilichojengewa ndani kinaweza tu kutafuta tukio la kwanza la jina la mwisho kwenye jedwali na hakitatusaidia. Maswali kama vile "Nani alikuwa msimamizi wa agizo nambari 10256?" pia itabaki bila kujibiwa, tk. VLOOKUP iliyojengewa ndani haiwezi kurudisha thamani kutoka safu wima hadi kushoto ya ile ya utafutaji.

Shida hizi zote mbili zinatatuliwa kwa mpigo mmoja - wacha tuandike kazi yetu ambayo haitaangalia tu ya kwanza, lakini, kwa ujumla, kwa tukio la Nth. Zaidi ya hayo, itaweza kutafuta na kutoa matokeo katika safu wima zozote. Hebu tuite, tuseme, VLOOKUP2. 

Fungua Kihariri cha Msingi cha Visual kwa kubonyeza ALT+F11 au kwa kuchagua kutoka kwenye menyu Huduma - Macro - Mhariri wa Msingi wa Visual (Zana - Macro - Kihariri cha Msingi cha Visual), ingiza moduli mpya (menu Ingiza - Moduli) na unakili maandishi ya kazi hii hapo:

Utendakazi wa VLOOKUP2(Jedwali Kama Lahaja, Safuwima ya Utafutaji Kwa Muda Mrefu, Thamani ya Utafutaji Kama Lahaja, _ N Kwa Muda Mrefu,ResultColumnNum As Long) Dim i Kwa Muda Mrefu, iCount As Long Teua Case TypeName(Jedwali) Kesi "Msururu" Kwa i = 1 Kwa Jedwali.Safu. .Hesabu Ikiwa Jedwali.Cells(i, SearchColumnNum) = SearchValue Kisha iCount = iCount + 1 Mwisho Kama iCount = N Kisha VLOOKUP2 = Jedwali.Cells(i, ResultColumnNum) Toka Kwa Mwisho Ikiwa Inayofuata i Kesi "Variant()" Kwa i = 1 Ili UBUund(Jedwali) Ikiwa Jedwali(i, SearchColumnNum) =TafutaValue Kisha iCount = iCount + 1 Ikiwa iCount = N Kisha VLOOKUP2 = Jedwali(i, ResultColumnNum) Toka Kwa Mwisho Ikiwa Inayofuata Namalizia Chagua Maliza Kazi  

Funga Kihariri cha Msingi cha Visual na urudi kwa Excel.

Sasa kupitia Ingiza - Kazi (Ingiza - Kazi) katika kategoria Mtumiaji Amefafanuliwa (Mtumiaji Amefafanuliwa) unaweza kupata utendaji wetu wa VLOOKUP2 na uitumie. Sintaksia ya kukokotoa ni kama ifuatavyo:

=VLOOKUP2(jedwali; nambari_ya_safu_ambapo_tunatafuta; thamani_ya_tafuta; N; nambari_ya_safu_kutoka_hadi_kupata_thamani)

Sasa mapungufu ya kazi ya kawaida sio kizuizi kwetu:

Kuboresha kitendakazi cha VLOOKUP

PS Shukrani za pekee kwa The_Prist kwa kuboresha utendaji kazi ili iweze kutafuta katika vitabu vilivyofungwa.

  • Kutafuta na kubadilisha data kutoka kwa jedwali moja hadi jingine kwa kutumia kitendakazi cha VLOOKUP
  • "VLOOKUP imeachwa" kwa kutumia vitendaji vya INDEX na MATCH

 

Acha Reply