VBA funktsiooni leidmine | Kuidas kasutada VBA leidmise funktsiooni? (Näited)

Exceli VBA leidmine

Kui kasutame tavalises töölehel funktsiooni Find, vajutame klaviatuuri otseteed CTRL + F ja tippime leidmiseks vajalikud andmed ning kui soovitud väärtus pole, siis läheme järgmisele mängule, kui selliseid vasteid on palju, on see tüütu ülesanne, kuid millal kasutame VBA-s FIND, see teeb meile ülesanded ja annab meile täpse vaste ning selleks on vaja kolme argumenti, üks on see, mida leida, kust leida ja kuhu vaadata.

Enne VBA-le liikumist ja makros leidmise funktsiooni kasutamist peame kõigepealt õppima, mis on Exceli leidmisfunktsioon. Tavalises excelis leiame redigeerimisgrupi vahekaardil Avaleht leidmisfunktsiooni, mida kasutatakse stringi või väärtuse leidmiseks lahtrivahemikust või kogu töölehelt.

Sellele klõpsates saame kaks võimalust;

Ühte on lihtne leida,

Näeme, et sellel on ka suvandirežiim, mis avab veel ühe funktsiooni.

See teeb algoritmi nelja piiranguga: Leia mida, Sees, Otsi ja vaatab sisse.

Exceli teine ​​võimalus on leida ja asendada, mida kasutatakse stringi leidmisel, kuid mida asendada mis tahes muu väärtusega,

Leidke funktsiooni süntaks

Oleme õppinud ülalpool seda, mis on Find in basic excel. VBA-s kirjutame koodid käsitsi, kuid funktsioonid on samad mis tavalises excelis. Kõigepealt vaatame süntaksit.

Väljend. Leidke (mida, otsige,….)

Kui meie otsitav väärtus leitakse koos Exceli funktsiooniga, tagastab see lahtri, kus väärtus on, ja kui väärtust ei leita, siis pole funktsiooni objektiks seatud midagi.

Makrode väljendid on määratletud vahemikud, näiteks vahemik 1 või vahemik 2. Mis on märksõna selle jaoks, mida me tahame konkreetset väärtust otsida? Lookin on märksõna, mida me otsime, kas see on kommentaar, valem või string. Samamoodi on funktsioonis Leia funktsioonid muud piirangud, mis on valikulised. Ainuke kohustuslik väli on kohustuslik see, mis on väärtus, mida proovime otsida.

Põhimõtteliselt leiab VBA, et Excelis on üks nõutav argument, millist väärtust me tahame otsida. Ülejäänud piirangud on valikulised ja leidmisfunktsioonis on palju piiranguid. Funktsioon Leida on sarnane sellele, mis on funktsioonis Leida.

Funktsiooni Leida funktsioon on lahtrite vahemik. Nagu millises vahemikus soovime väärtust leida. See võib olla mõni veerg või mõni lahter või terve tööleht.

Näited

Selle VBA LEIDA funktsiooni Exceli mall saate alla laadida siit - VBA LEIDA funktsiooni Exceli mall

Näide 1

Oletame, et meie andmetel on järgmised väärtused

Püüame samadest andmetest leida ka “Arani”.

  • VBA-koodi kirjutamiseks peab VBA-koodide kirjutamiseks olema Excelis lubatud arendaja vahekaart.

  • Alustame oma koodi kirjutamist järgmise koodi, nagu allpool näidatud,
Alamproov ()

Hämar leiab stringina

Hämar Rng vahemikuna

FindS = InputBox („Sisestage väärtus, mida soovite otsida”)

Lehtedega („Sheet1”). Vahemik („A: A”)

  • Valim on alamale antud funktsiooni nimi.
  • Leia on string, mida soovime, et kasutaja, kelle sisestada soovime, otsiks.
  • Rng on muutuja, mille võtsime vahemiku jaoks.
  • Nüüd palume kasutajal sisestada väärtus, mis näeb välja nagu allpool olev ekraanipilt,

  • Nüüd määratleme moodulis oma otsimisfunktsiooni.

  • Funktsioon leiab kasutaja sisestatud väärtuse antud vahemikus.
  • Nüüd sulgeme funktsiooni järgmiste argumentidega.

  • Nüüd, kui käivitame oma koodi kõigepealt, küsib see kasutaja käest väärtust.

  • Kui kood on lõpule viidud, naaseb see lahtrisse, kust andmed leiti.

Näide 2

Ülaltoodud näites oli neli ainulaadset nime, kuid mis oleks, kui andmetes oleks rohkem kui üks nimi, näiteks võtke arvesse alltoodud andmeid,

Näeme, et nime Aran korratakse ülaltoodud andmetes kaks korda. Kui Excel peab leidma nime Aran, leiab ta selle lahtrist A2 ja peatub, kuid lahtris A6 on veel üks väärtus, mis sarnaneb A2 väärtusega. Kuidas seda väärtust tuua? Siit tuleb abi leidmise süntaks.

Pärast määratleb lahtri, mille järel soovime andmeid otsida.

Kirjutagem ülaltoodud andmete kood.

  • Pidage alati meeles, et lubage arendaja vahekaart valikute abil ja seejärel kohandage Excelis linti, et saaksite koodi VBA-sse kirjutada.
  • VBA-s saame Microsofti exceli objektid, mis on moodul, kuhu kirjutame koodid.

  • Varem töötasime lehel 1, nüüd töötame lehel 2, nii et valige teise mooduli jaoks leht 2 ja ilmub tühi leht.

  • Alustage nüüd koodi kirjutamist, määrates funktsiooni kõigepealt SUB Sample2 () ja vajutage sisestusklahvi.

  • Nüüd oleme oma funktsiooni määratlenud ja hakkame jõudma põhiosa, mis on meie muutujate määratlemine.

  • Määrake, mis muutujale Find peaks olema,

  • Valige lehed, mille kallal töötame, on selle näite leht 2,

  • Nüüd leiame teksti, mida kasutaja sisestab pärast A2 lahtrit, nii et määratleme oma otsingufunktsiooni allpool,

  • Nüüd sulgeme koodi, lõpetades tähise ja tingimustega.

Mida ülaltoodud kood teeb, on stringi otsimine lahtri A2 järel ja selle tagastamine lahtrisse, kus see leidub.

Asjad, mida meeles pidada

  1. Kõigepealt peame VBA kasutamiseks lubama arendaja vahekaardi.
  2. Mis on konkreetne väärtus, mille peame leidma?
  3. Kui väärtust ei leita, määratakse funktsiooni objektiks null.