Funkcija iskanja VBA | Kako uporabiti funkcijo iskanja VBA? (Primeri)

Excel VBA Find

Ko v običajnem delovnem listu uporabimo Find, pritisnemo bližnjico na tipkovnici CTRL + F in vtipkamo podatke, ki jih potrebujemo, in če ne želimo želene vrednosti, gremo na naslednjo tekmo, če je takih zadetkov veliko, je to dolgočasno opravilo, toda ko uporabljamo FIND v VBA, naloge opravi namesto nas in nam poda natančno ujemanje. Potrebujemo tri argumente, eden je, kaj najti, kje najti in kje iskati.

Preden se premaknemo na VBA in začnemo uporabljati funkcijo iskanja v makrih, se moramo najprej naučiti, kaj je funkcija iskanja v Excelu. V običajnem Excelu na zavihku Domov pod skupino za urejanje lahko najdemo funkcijo iskanja, ki se uporablja za iskanje niza ali vrednosti v obsegu celic ali celotnem delovnem listu.

Ko kliknemo na to, dobimo dve možnosti;

Enega je enostavno najti,

Vidimo, da ima tudi način možnosti, ki odpira še eno funkcijo.

Omogoča algoritem iskanja s štirimi omejitvami, poišči kaj, znotraj, poišči in poglej.

Druga možnost v Excelu je najti in zamenjati, ki se uporablja, ko najdemo niz, ampak kaj naj nadomesti s katero koli drugo vrednostjo,

Poiščite sintakso funkcije

Zgoraj smo se naučili, kaj je Find in basic excel. V VBA kode pišemo ročno, vendar so lastnosti enake običajnim excelom. Najprej si oglejmo skladnjo.

Expression.Find (What, lookin,….)

Če vrednost, ki jo iščemo, najdemo s funkcijo excel, vrne celico, kjer je vrednost, in če vrednost ni najdena, je predmet funkcije nastavljen na nič.

Izrazi v makrih so opredeljeni obsegi, na primer obseg 1 ali obseg 2. Kaj je ključna beseda za to, kaj želimo iskati za določeno vrednost? Lookin je ključna beseda za to, kar poskušamo iskati, je to komentar, formula ali niz. Podobno obstajajo tudi druge omejitve funkcije Find, ki niso obvezne. Edino obvezno polje je vrednost, ki jo poskušamo iskati.

VBA v bistvu ugotovi, da ima Excel en zahtevan argument, in sicer Kakšno vrednost želimo iskati. Preostale omejitve niso obvezne in v funkciji iskanja je veliko omejitev. Funkcija iskanja je podobna funkciji iskanja v Excelu.

Parameter funkcije iskanja je obseg celic. Tako kot v katerem obsegu želimo najti vrednost. Lahko je nekaj stolpcev ali nekaj celic ali cel delovni list.

Primeri

To predlogo funkcije VBA FIND Excel najdete tukaj - Predloga Excel funkcije VBA FIND

Primer # 1

Recimo, da imajo naši podatki naslednje vrednosti

V istih podatkih bomo poskušali najti "Aran".

  • Če želite pisati kodo VBA, morate v Excelu omogočiti zavihek za razvijalce, da lahko pišete kode VBA.

  • Kodo začnemo pisati tako, da napišemo naslednjo kodo, kot je prikazano spodaj,
Podvzorec ()

Dim najde v nizu

Dim Rng As Range

FindS = InputBox ("Vnesite vrednost, ki jo želite iskati")

Z listi ("Sheet1"). Razpon ("A: A")

  • Vzorec je ime funkcije, podano pod.
  • Najdi je niz, za katerega želimo, da ga išče uporabnik, ki ga želimo vnesti.
  • Rng je spremenljivka, ki smo jo vzeli za obseg.
  • Zdaj prosimo uporabnika, da vnese vrednost, ki je videti kot spodnji posnetek zaslona,

  • Zdaj bomo v modulu opredelili našo funkcijo iskanja.

  • Funkcija najde vrednost, ki jo je uporabnik vnesel v danem obsegu.
  • Zdaj funkcijo zapremo z naslednjimi argumenti.

  • Zdaj, če najprej zaženemo našo kodo, uporabnik zahteva poziv za vrednost.

  • Ko je koda dokončana, vrne celico tja, kjer so bili najdeni podatki.

2. primer

V zgornjem primeru so bila štiri edinstvena imena, kaj pa če bi bilo v podatkih več imen, na primer upoštevanje spodnjih podatkov,

Vidimo, da se ime Aran v zgornjih podatkih ponovi dvakrat. Če mora excel najti ime Aran, ga bo našel v celici A2 in se ustavil, obstaja pa še ena vrednost, podobna vrednosti A2 v celici A6. Kako pridobiti to vrednost? Tu je sintaksa Find (What, After) v pomoči.

Po definira celico, po kateri referenci želimo iskati podatke.

Zapišimo kodo za zgornje podatke.

  • Vedno ne pozabite omogočiti zavihka za razvijalce med možnostmi in nato s prilagoditvijo traku v Excelu, da boste lahko pisali kodo v VBA.
  • V VBA dobimo predmete Microsoft Excel, ki je modul, v katerega pišemo kode.

  • Prej smo delali na listu 1, zdaj delamo na listu 2, zato izberite list 2 za drug modul in prikaže se prazna stran.

  • Zdaj začnite pisati kodo tako, da funkcijo najprej definirate kot SUB Sample2 () in pritisnete enter.

  • Zdaj, ko smo definirali svojo funkcijo, bomo začeli prehajati v glavni del, ki definira naše spremenljivke.

  • Določite, kaj naj vsebuje spremenljivka Find,

  • Izberite liste, na katerih delamo, to je list 2 v tem primeru,

  • Zdaj bomo našli besedilo, kar uporabnik vnese po celici A2, zato določimo svojo funkcijo iskanja, kot spodaj,

  • Zdaj zapremo kodo tako, da končamo pogoje z in če.

Zgornja koda poišče niz po celici A2 in vrne celico, kjer koli jo najde.

Stvari, ki si jih je treba zapomniti

  1. Najprej moramo za uporabo VBA omogočiti zavihek za razvijalce.
  2. Kakšno specifično vrednost moramo najti?
  3. Če vrednosti ni mogoče najti, je objekt funkcije nastavljen na nič.