Tabloya naverokê
Yek ji fonksiyonên herî girîng û berfireh ku em di Serlêdana Visual Basic (VBA) de bikar tînin fonksiyona Find e. Di vê gotarê de, ez ê nîşanî we bidim ka hûn çawa dikarin Fonksiyon FIND ya Excel bi mînak û nîgarên rast bi kar bînin.
Pirtûka Xebatê ya Pratîkê dakêşin
Fonksiyon di VBA-yê de li Excel.xlsm Bibînin
6 Nimûneyên Bilez ku Di VBA de Fonksiyona FIND bikar bînin
Li vir em hatine Daneyên bi Navên Pirtûkan, Nivîskar û Bihayên yên hin pirtûkên pirtûkfiroşekî bi navê Martin Bookstore.
Îro armanca me ev e ku em cûrbecûr karanîna Fonksiyonê Bibîne ya VBA ji vê berhevoka daneyê bibînin.
1. Di VBA-ya Bê Parametre de Fonksiyona Findê bi kar bîne
Hûn dikarin Fonksiyon Bibîne ya VBA bêyî parametre bikar bînin.
Piştre ew dê li nirxek taybetî di nav rêzek şaneyan de bigere û lihevhatina yekem a ku dibîne vegerîne.
Werin em li navê bigerin “P. B. Shelly” di stûna Nivîskar ( C4:C13 ).
Xeta bi Fonksiyon Bibîne wê bibe:
Set cell = Range("C4:C17").Find("P. B. Shelly")
Temamiya Koda VBA dê bibe:
⧭ Koda VBA:
7520
⧭ Derketin:
Ew çêdike Makro tê gotin Find . Ger hûn Macroyê bimeşînin, ew ê vegere $C$6 , navnîşana hucreya yekem a bi navê P. B. Shelly .
Zêdetir Bixwîne: Di nav rêzek bi VBA-yê de bibîninExcel: Tevlî Maçên Rast û Parçeyî
2. Di VBA-yê de bi Parametreya Paşê (Ji bo Destpêkirina Lêgerînê ji Xaleke Taybet) Bixebitînin
Hûn dikarin bi Fonksiyon Bibîne parametreya Piştî bikar bînin. di VBA de. Dûv re ew ê dest bi lêgerîna nirxek ji binê şaneyek di nav rêzekê de bike.
Mînakî, em dest bi lêgerîna navî bikin “P. B. Shelly” ji şaneya jêrîn C6 .
Rêza kodê dê bibe:
Set cell = Range("C4:C13").Find("P. B. Shelly", After:=Range("C6"))
Û bi temamî koda VBA dê bibe:
⧭ Koda VBA:
6407
⧭ Derketin:
Dê vegere $C$13 ji ber ku ji binê şaneya C6 dest bi lêgerînê dike, ew ji hucreya C7 e. Ji ber vê yekê ew dibe P. B. Shelly di hucreyê de C13 yekem.
Zêdetir bixwînin: Çawa Di şaneyê de Stringê Bibînin Hucreya VBA di Excel de bikar tîne
3. Fonksiyona Findê di VBA-yê de bi pêça li dora Parametreya Paşê bixebite (Ji bo Lêgerîna Nirxek Bi Awayê Dor)
Parametra Piştî bi fonksiyona Find li nirxekê bi awayekî dorveger digere
Ango, ji binê şaneyek di nav rêzekê de dest bi lêgerînê dike, lêgerîna di navberê de diqedîne û dûv re dîsa ji serê rêzê dest pê dike.
0>Mînakî, em dest bi lêgerîna navê "John Keats" ji şaneya jêrîn C8 bikin û bi karanîna parametreya Piştî vebikin.
Rêza kod dê bibe:
Set cell = Range("C4:C13").Find("John Keats", After:=Range("C8"))
Ûtemam Koda VBA dê bibe:
⧭ Koda VBA:
7076
⧭ Derketin:
Ew ê vegere $C$7 ji ber ku ji binê şaneya C8 dest bi lêgerînê dike, ew ji şaneya C9 .
Heta şaneya C13 tiştekî nabîne, loma dîsa ji şaneya C4 dest pê dike û di şaneyê de yekî dibîne. C7 .
Xwendinên bi vî rengî:
- Meriv çawa String bi VBA-yê re bibîne li Excel (8 Nimûne)
- Lihevhatina Rastîn Bi Bikaranîna VBA-yê li Excel-ê Bibînin (5 Rê)
- Meriv çawa VBA bikar tîne û veguherîne (11) Rêyên)
4. Di VBA-yê de bi Parametreya LookAt re fonksiyona Findê bi kar bîne (Ji bo Maça Rast an Beşdar)
Hûn dikarin di VBA de bi fonksiyona Findê bi kar bînin. Parametreya>LookAt .
LookAt = xlWhole ji bo Taksî hevhatinek, û LookAt=xlPart ji bo Paralî bikar bînin. li hev bikin.
Mînakî, werin em biceribînin ka pirtûkek bi navê "Ode" di stûna Navê Pirtûkê de heye ( B4:B13 ).
Heke em xlWhole di rêza kodê de bikar bînin:
Set cell = Range("B4:B13").Find("Ode", LookAt:=xlWhole)
Derketin dê xeletiyek nîşan bide ji ber ku ew ê hevahengek temam nabîne.
Lê heke hûn bikar bînin:
Set cell = Range("B4:B13").Find("Ode", LookAt:=xlPart)
Piştre ew ê vegere $B$9 , ji ber ku di hucreya de pirtûkek bi navê "Ode" heye. B7 , Odeya Bilbilê.
Ji ber vê yekê koda tevahî ya partî maçaev e:
⧭ Koda VBA:
9568
5. Bi Parametreya SearchDirection ve Fonksiyona Findê di VBA-yê de bixebitînin (Ji bo Diyarkirina Arasteya Lêgerînê)
Hûn dikarin di VBA de fonksiyona Find jî bi kar bînin. Parametreya SearchDirection .
Bikaranîna SearchDirection = xlNext ji bo lêgerîna ji Ser heta Binî .
Û SearchDirection = xlBerê ji bo lêgerîna ji Binî ber bi jor .
Mînakî, em hewl bidin ku Nivîskar Elîf Şafak di stûna Nivîskar de bibînin. ( C4:C13 ).
Heke em xlNext di rêza kodê de bikar bînin:
Set cell = Range("C4:C13").Find("Elif Shafak", SearchDirection:=xlNext)
Piştre ew ê vegere $C$5 .
Lê heke hûn bikar bînin:
Set cell = Range("C4:C13").Find("Elif Shafak", SearchDirection:=xlPrevious)
Piştre ew ê vegere $C$11 .
Ji ber vê yekê koda tevahî ya lêgerîna ji binî ber bi jor e:
⧭ Koda VBA:
8477
6. Di VBA-yê de bi Parametreya MatchCase Fonksiyonê Bibînin (Ji Bo MatchCase-Sensitive or Insitive Match)
Di dawiyê de, hûn dikarin Fonksiyon Bibîne bi parametreya MatchCase bikar bînin.
MatchCase = Rast ji bo hevokek hevok , û MatchCase=False ji bo bikar bînin. lihevhatî-nesenstîv.
Mînakî, em biceribînin ku di stûna Navê pirtûkê de kitêba “dayik” bibînin ( B4:B13 ).
Heke em di rêza kodê de True bikar bînin:
Set cell = Range("B4:B13").Find("mother", MatchCase:=True)
Dê encam xeletiyek nîşan bide ji ber ku ew ê' tu kesî nabînelihevhatin.
Lê heke hûn bikar bînin:
Set cell = Range("B4:B13").Find("mother", MatchCase:=False)
Piştre ew ê vegere $ B$9 ji ber ku di hucreya B8 de pirtûkek bi navê "Dayik" heye.
Ji ber vê yekê koda tevahî ji bo lihevhatina nehessasiyet ev e:
⧭ Koda VBA:
2147
Encam
Bi karanîna van rêbazan, hûn dikarin di Serîlêdana Visual Basic de Fonksiyona Findê bikar bînin. Pirsên te hene? Xwe ji me bipirsin.