Funkcija Excel VBA LOOKUP
Iskanje je funkcija, ki nam pomaga pridobiti podatke iz glavne tabele na podlagi ene same vrednosti iskanja. Funkcija VBA LOOKUP ne zahteva takšne podatkovne strukture, za funkcijo LOOKUP ni pomembno, ali je stolpec z rezultati desno ali levo od iskalne vrednosti, vendar lahko podatke udobno pridobi.
To deluje podobno kot funkcija VLOOKUP, še pomembneje pa je, da je v podatkovni strukturi prilagodljiva. Ko rečemo prilagodljiv v podatkovni strukturi, to pomeni, da VLOOKUP potrebuje vse vrednosti desno od iskalne vrednosti v glavni tabeli in vse, kar ostane do iskalne vrednosti, VLOOKUP ne najde.

Sintaksa
Če ste v urejevalniku VBA že iskali formulo LOOKUP, sem prepričan, da ste se zmešali, ker v VBA obstaja formula LOOKUP.
Razlog, zakaj privzeto ni na voljo, ker LOOKUP prej ni funkcija VBA, temveč funkcija delovnega lista. Za uporabo funkcije LOOKUP moramo najprej uporabiti funkcijo delovnega lista v razredu VBA.

- Arg. 1 pomeni vrednost iskanja
- Arg 2 je naš iskalni vektor, tj. Obseg našega stolpca iskalne vrednosti
- Arg 3 je naš vektor rezultatov.
Kako uporabiti funkcijo iskanja VBA? (Primeri)
Primer # 1
Imamo naslednje podatke, iz katerih želimo pridobiti povprečno ceno določenega imena izdelka s pomočjo funkcije Iskanje v programu VBA Excel.

Če želite pridobiti povprečno ceno mobilne opreme, uporabite naslednjo kodo.
1. korak: Zaženite podproceduro v VBA.
Koda:
Sub Lookup_Example1 () Konec Sub

2. korak: Potrebujem rezultat v celici F3. Moja koda je torej Range ("F3"). Value =.
Koda:
Sub Lookup_Example1 () Obseg ("F3"). Vrednost Konec Sub

3. korak: Kot sem že povedal, nismo mogli takoj dostopati do funkcije LOOKUP. Najprej uporabite razred Funkcija delovnega lista.

4. korak: Ko uporabimo razred Funkcije delovnega lista, lahko v VBA vidimo vse razpoložljive formule s tem razredom, zato na tem seznamu izberite LOOKUP.

5. korak: Pri funkcijah delovnega lista v VBA ne vidimo jasnih argumentov formule. Tu Arg 1 pomeni vrednost iskanja. Naša iskalna vrednost je v celici E3, zato zapišite kodo kot Obseg (“E3”).
Koda:
Sub Lookup_Example1 () Obseg ("F3"). Value = WorksheetFunction.Lookup (Range ("E3"). Value End Sub

6. korak: Arg 2 je naš iskalni vektor, tj. Obseg našega stolpca iskalne vrednosti. V tem primeru je naš vektor iskalnega vektorja od B3 do B10.
Koda:
Sub Lookup_Example1 () Obseg ("F3"). Vrednost = WorksheetFunction.Lookup (Obseg ("E3"). Vrednost, obseg ("B3: B10"), Konec Sub

7. korak: Arg 3 je naš vektor rezultatov. Potrebujemo rezultat iz stolpca Povpr. Cena, zato je vektor rezultata od območja C3 do C10.
Koda:
Sub Lookup_Example1 () Obseg ("F3"). Vrednost = Delovni list Funkcija. Iskanje (Obseg ("E3"). Vrednost, obseg ("B3: B10"), Obseg ("C3: C10")) Konec Sub

Ok, končali smo s kodiranjem VBA.
Zaženimo kodo in rezultat bi morali dobiti v celici F3.

Tako lahko uporabimo funkcijo LOOKUP pod razredom funkcije delovnega lista, da pridobimo podatke o podani vrednosti iskanja.
2. primer
Za funkcijo LOOKUP uporabite spremenljivke
Tudi s pomočjo spremenljivk lahko pridemo do rezultatov. Spodaj je primer kode iskalne funkcije s spremenljivkami.
Koda:
Sub Lookup_Example2 () Dim ResultCell As Range Dim LookupValueCell As Range Dim LookupVector As Range Dim ResultVector As Range Set ResultCell = Range ("F3") Set LookupValueCell = Range ("E3") Set LookupVector3 Range (B10) ResultVector = obseg ("C3: C10") ResultCell = WorksheetFunction.Lookup (LookupValueCell, LookupVector, ResultVector) End Sub

Čeprav se zdi dolgotrajen, bo v VBA dobro izpostavljen spremenljivkam. Namesto da bi vse vrednosti neposredno podali v formulo, smo razglasili spremenljivke in jim dodelili nabor obsegov in vrednosti.

Deklariranje spremenljivk in nastavitev referenc na te spremenljivke je vedno dobra praksa v katerem koli kodnem jeziku.
Stvari, ki si jih je treba zapomniti
- LOOKUP je alternativna funkcija VLOOKUP.
- LOOKUP ne zahteva nujno, da je stolpec z rezultati na desni strani iskalne vrednosti.
- Dolžina obsega iskalnega vektorja in vektorja rezultatov mora biti enaka.
- Še pomembneje je, da moramo navesti indeksno številko stolpca, ki je potrebna za funkcijo VLOOKUP.