Jinsi ya kutumia Tafuta Kazi katika VBA (Mifano 6)

  • Shiriki Hii
Hugh West

Mojawapo ya vitendakazi muhimu na vinavyotumika sana tunachotumia katika Visual Basic Application (VBA) ni kipengele cha Tafuta. Katika makala haya, nitakuonyesha jinsi unavyoweza kutumia TAFUTA kitendakazi ya Excel na mifano na vielelezo sahihi.

Pakua Kitabu cha Mazoezi

Tafuta Kazi katika VBA katika Excel.xlsm

Mifano 6 ya Haraka Ili Kutumia Chaguo za FIND katika VBA

Hapa ilipata seti ya data yenye Majina ya Vitabu, Waandishi na Bei ya baadhi ya vitabu vya duka la vitabu linaloitwa Martin Bookstore.

Leo lengo letu ni kuona aina mbalimbali za matumizi ya Tafuta fomula ya VBA kutoka kwa seti hii ya data.

1. Tumia Pata Chaguo katika VBA bila Kigezo

Unaweza kutumia Tafuta chaguo za kukokotoa ya VBA bila vigezo.

Kisha itafuata. itatafuta thamani mahususi ndani ya safu ya visanduku na kurudisha inayolingana ya kwanza inayopata.

Hebu tutafute jina “P. B. Shelly” katika safuwima Mwandishi ( C4:C13 ).

Mstari wenye kitendakazi cha Tafuta utakuwa:

Set cell = Range("C4:C17").Find("P. B. Shelly")

Msimbo kamili VBA itakuwa:

Msimbo wa VBA:

7592

Pato:

Inazalisha Macro inayoitwa Tafuta . Ukiendesha Macro, itarudisha $C$6 , anwani ya kisanduku cha kwanza yenye jina P. B. Shelly .

Soma zaidi: Tafuta ndani ya Masafa yenye VBA katikaExcel: Inajumuisha Ulinganifu Halisi na Sehemu

2. Tumia kipengele cha Tafuta katika VBA na Kigezo cha Baada (Kuanza Kutafuta kutoka kwa Kiini Maalum)

Unaweza kutumia kigezo cha Baada ya na Tafuta kitendakazi katika VBA . Kisha itaanza kutafuta thamani kutoka chini ya kisanduku ndani ya masafa.

Kwa mfano, tuanze kutafuta jina “P. B. Shelly” kutoka chini ya seli C6 .

Mstari wa msimbo utakuwa:

Set cell = Range("C4:C13").Find("P. B. Shelly", After:=Range("C6"))

Na nambari kamili ya VBA itakuwa:

Msimbo wa VBA:

3455

Pato:

Itarudi $C$13 kwa sababu inaanza kutafuta kutoka chini ya kisanduku C6 , hiyo ni kutoka kwa seli C7 . Kwa hivyo inapata P. B. Shelly kwenye seli C13 kwanza.

Soma zaidi: Jinsi ya Kupata Kamba katika a Kisanduku kinachotumia VBA katika Excel

3. Endesha Shughuli ya Tafuta katika VBA kwa Kufunga Kigezo cha Baada (Ili Kutafuta Thamani katika Njia ya Mviringo)

Kigezo cha Baada ya na Tafuta chaguo za kukokotoa hutafuta thamani kwa njia ya mduara

Yaani, huanza kutafuta kutoka chini ya kisanduku ndani ya masafa, inamaliza kutafuta katika masafa, na kisha kuanza tena kutoka juu ya masafa.

Kwa mfano, hebu tuanze kutafuta jina “John Keats” kutoka chini ya seli C8 kwa kutumia After parameta.

Mstari wa kanuni itakuwa:

Set cell = Range("C4:C13").Find("John Keats", After:=Range("C8"))

Nakamilisha msimbo wa VBA utakuwa:

Msimbo wa VBA:

3825

Pato:

Itarudi $C$7 kwa sababu inaanza kutafuta kutoka chini ya seli C8 , hiyo ni kutoka seli C9 .

Haipati chochote hadi kisanduku C13 , kwa hivyo inaanza tena kutoka kwa seli C4 na kupata moja kwenye seli. C7 .

Masomo Sawa:

  • Jinsi ya Kupata Kamba kwa VBA katika Excel (Mifano 8)
  • Tafuta Ulinganifu Hasa Kwa Kutumia VBA katika Excel (Njia 5)
  • Jinsi ya Kupata na Kubadilisha Kwa Kutumia VBA (11 Njia)

4. Tumia kipengele cha Tafuta katika VBA na Kigezo cha LookAt (Kwa Ulinganifu Hasa au Sehemu)

Unaweza kutumia Tafuta kitendakazi katika VBA na Angalia kigezo.

Tumia LookAt = xlWhole kwa mechi Halisi, na LookAt=xlPart kwa Sehemu mechi.

Kwa mfano, hebu tujaribu kujua kama kuna kitabu chochote chenye jina “Ode” kwenye Jina la Kitabu safu ( B4:B13 ).

Ikiwa tutatumia xlWhole katika mstari wa msimbo:

Set cell = Range("B4:B13").Find("Ode", LookAt:=xlWhole)

Toleo litaonyesha hitilafu kwa sababu halitapata sahihi inayolingana.

Lakini ukitumia:

Set cell = Range("B4:B13").Find("Ode", LookAt:=xlPart)

Kisha itarudi $B$9 , kwa sababu kuna kitabu chenye jina “Ode” ndani yake kwenye kisanduku B7 , Ode to the Nightingale.

Kwa hivyo nambari kamili ya mechi partial ni:

Msimbo wa VBA:

1405

5. Tekeleza Kazi ya Tafuta katika VBA kwa Kigezo cha Utafutaji wa Utafutaji (Ili Kubainisha Mwelekeo wa Utafutaji)

Unaweza pia kutumia Tafuta kitendakazi katika VBA na SearchDirection parameta.

Tumia SearchDirection = xlNext kwa kutafuta kutoka Juu hadi Chini .

Na SearchDirection = xlPrevious kwa ajili ya kutafuta kutoka Chini hadi Juu .

Kwa mfano, hebu tujaribu kutafuta Mwandishi Elif Shafak kwenye safu Mwandishi ( C4:C13 ).

Ikiwa tutatumia xlNext katika mstari wa msimbo:

Set cell = Range("C4:C13").Find("Elif Shafak", SearchDirection:=xlNext)

Kisha itarudi $C$5 .

Lakini ukitumia:

Set cell = Range("C4:C13").Find("Elif Shafak", SearchDirection:=xlPrevious)

Kisha itarudi $C$11 .

Kwa hivyo msimbo kamili wa kutafuta kutoka chini hadi juu 2> ni:

Msimbo wa VBA:

4154

6. Pata Kazi katika VBA iliyo na Kigezo cha MatchCase (Kwa Nyeti Nyeti au Ulinganifu Isiyojali)

Tumia MatchCase = True kwa kesi nyeti mechi , na MatchCase=False kwa isiyojali kesi mechi.

Kwa mfano, hebu tujaribu kutafuta kitabu “mama” katika safu ya Jina la Kitabu ( B4:B13 ).

Ikiwa tutatumia Kweli katika mstari wa msimbo:

Set cell = Range("B4:B13").Find("mother", MatchCase:=True)

Toleo litaonyesha hitilafu kwa sababu haitafanya' sipati yoyotemechi.

Lakini ukitumia:

Set cell = Range("B4:B13").Find("mother", MatchCase:=False)

Basi itarudi $ B$9 kwa sababu kuna kitabu kiitwacho “Mama” kwenye seli B8 .

Kwa hivyo nambari kamili ya kuthibitisha mechi ya kesi isiyojali ni:

Msimbo wa VBA:

5996

Hitimisho

Kwa kutumia mbinu hizi, unaweza kutumia Pata Kazi katika Utumizi wa Msingi wa Visual. Je, una maswali yoyote? Jisikie huru kutuuliza.

Hugh West ni mkufunzi na mchambuzi mwenye uzoefu wa juu wa Excel na uzoefu wa zaidi ya miaka 10 katika tasnia. Ana Shahada ya Kwanza katika Uhasibu na Fedha na Shahada ya Uzamili katika Utawala wa Biashara. Hugh ana shauku ya kufundisha na ameanzisha mbinu ya kipekee ya kufundisha ambayo ni rahisi kufuata na kuelewa. Ujuzi wake wa kitaalam wa Excel umesaidia maelfu ya wanafunzi na wataalamu ulimwenguni kote kuboresha ujuzi wao na kufaulu katika taaluma zao. Kupitia blogu yake, Hugh hushiriki ujuzi wake na ulimwengu, akitoa mafunzo ya bila malipo ya Excel na mafunzo ya mtandaoni ili kuwasaidia watu binafsi na biashara kufikia uwezo wao kamili.