Excel VBA Funcție de căutare

În excel, am folosit VLookup de multe ori. Se află în funcția Insert, care este folosită pentru a obține sau pentru a cartografia orice fel de valori dorite. În mod similar, în VBA avem aplicația Lookup, care funcționează la fel ca Excel Vlookup. Căutarea VBA are o structură de date flexibilă, deoarece poate fi utilizată pentru a mapa orice fel de valoare din orice tip de tabel. Aceasta înseamnă că dacă aplicăm Excel Vlookup, atunci nu vom putea să mapăm datele coloanei din dreapta cu datele coloanei din stânga într-o singură sintaxă. În timp ce în VBA Lookup, nu există o structură corespunzătoare de mapare. Trebuie doar să urmărim sintaxa VBA Lookup. Dacă sintaxa este satisfăcută și încadrată corect, atunci putem prelua valorile din partea dreaptă sau stângă a tabelului.

Sintaxa funcției de căutare VBA:

Unde,

  • Arg1 = Valoarea pe care dorim să o căutăm.
  • Arg2 = Gama de coloane sau tabel de unde dorim să facem căutări.
  • Arg3 = Rezultat ca Boolean sau Vector.

Cum să utilizați funcția de căutare în Excel VBA?

Vom învăța cum să utilizăm funcția Căutare în Excel, folosind Codul VBA.

Puteți descărca acest șablon Excel de căutare VBA de aici - Șablon Excel de căutare VBA

Căutare VBA - Exemplul # 1

Există multe modalități de a scrie codul VBA Lookup. În acest exemplu, vom vedea un mod simplu de a scrie VBA Lookup. Pentru aceasta, avem un set de date așa cum se arată mai jos. Acest tabel conține numărul de curse și viteza medie a curselor. Acum vom folosi aceste date pentru a aplica VBA Lookup în tabelul de mai jos, cu anteturile Blue în A8 la B8. Pentru aceasta, urmați pașii de mai jos:

Pasul 1: Deschideți un modul din fila Meniu Insert, așa cum se arată mai jos.

Pasul 2: Scrieți subprocedura pentru lucrările efectuate în acel modul. Aici am ales numele ca VBA Lookup.

Cod:

 Sub VBA_Lookup1 () End Sub 

Pasul 3: Selectați celula de ieșire unde trebuie să vedem valoarea căutării. Aici, acea celulă este B9, unde vom căuta cu valoarea referitoare la numele „Aniket”, care este valoarea noastră de căutare.

Cod:

 Sub VBA_Lookup1 () Interval ("B9"). Valoare End End 

Pasul 4: Acum vom folosi funcția foii de lucru și vom selecta funcția de căutare încorporată în listă, așa cum se arată mai jos.

Cod:

 Sub VBA_Lookup1 () Interval ("B9"). Value = WorksheetFunction.Lookup End Sub 

Pasul 5: Odată ce selectăm funcția Căutare, vom vedea Arg1, Arg2 și Arg3 în sintaxa sa. Pentru aceasta, vom pune mai întâi intervalul nostru de valori Lookup, care este celula A9 în locul Arg1.

Cod:

 Sub VBA_Lookup1 () Interval ("B9"). Value = WorksheetFunction.Lookup (Range ("A9"). Value, End Sub 

Pasul 6: Acum pentru Arg2, selectați intervalul de căutare care este din celula A2: A5.

Cod:

 Sub VBA_Lookup1 () Interval ("B9"). Value = WorksheetFunction.Lookup (Range ("A9")) Value, Range ("A2: A5"), End Sub 

Pasul 7: În sfârșit, selectați intervale de valori de căutare care sunt de la B2 la B5 în locul Arg3.

Cod:

 Sub VBA_Lookup1 () Interval ("B9"). Value = WorksheetFunction.Lookup (Range ("A9"). Value, Range ("A2: A5"), Range ("B2: B5")) End Sub 

Pasul 8: Rulați codul apăsând tasta F5 sau făcând clic pe butonul Redare situat sub panglica meniului. Vom vedea, conform Lookup, numărul de curse efectuate cu numele „Aniket” este de 7.

Căutare VBA - Exemplul # 2

Există un alt mod de a aplica o funcție de căutare în Excel VBA. Pentru aceasta, vom folosi aceleași date pe care le-am văzut în exemplul 1. Pentru aceasta, urmați pașii de mai jos:

Pasul 1: Scrieți subprocedura pentru VBA Lookup, așa cum se arată mai jos.

Cod:

 Sub VBA_Lookup2 () End Sub 

Pasul 2: Definiți o variabilă ca String, care va fi utilizată pentru a mapa coloana Nume.

Cod:

 Sub VBA_Lookup2 () Nume Dim Ca șir de cap 

Pasul 3: În variabila definită Nume, vom aplica aplicația Vlookup așa cum se arată mai jos.

Cod:

 Sub VBA_Lookup2 () Dim Dim ca nume de șir = Application.VLookup (End Sub 

Pasul 4: Să spunem că valoarea noastră de căutare este numită „Ashwani” din tabel.

Cod:

 Sub VBA_Lookup2 () Nume Dim Ca Nume String = Aplicație.VLookup ("Ashwani", Sub End 

Pasul 5: Și domeniul este de la A1 la C6 de la Sheet1.

Cod:

 Sub VBA_Lookup2 () Nume Dim Ca Nume String = Aplicație.VLookup ("Ashwani", Sheet1.Range ("A1: C6"), Sub End 

Pasul 6: Acum, dacă vrem să vedem viteza medie a călărețului „Ashwani” aici, trebuie să mapăm celula din sintaxa Lookup care se află pe locul 3.

Cod:

 Sub VBA_Lookup2 () Nume Dim Ca nume String = Aplicație.VLookup ("Ashwani", Sheet1.Range ("A1: C6"), 3) End Sub 

Pasul 7: Acum pentru a vedea viteza medie a călărețului „Ashwani”, putem folosi MsgBox și Debug Print. Dar utilizarea Debug Print este mult mai bună decât MsgBox. Așadar, alocați imprimarea de debug cu numele variabilei definite.

Cod:

 Sub VBA_Lookup2 () Nume Dim Ca nume String = Application.VLookup ("Ashwani", Sheet1.Range ("A1: C6"), 3) Debug.Print Name End Sub 

Pasul 8: Acum deschideți Fereastra Imediată, care este acolo în fila meniu Vizualizare, pentru a vedea ieșirea.

Pasul 9: Compilați codul și executați-l. Vom vedea, Lookup a mapat cu viteza Ashwani și a adus-o în fereastra Imediată ca 86 .

Cod:

 Sub VBA_Lookup2 () Nume Dim Ca nume String = Application.VLookup ("Ashwani", Sheet1.Range ("A1: C6"), 3) Debug.Print Name End Sub 

Căutare VBA - Exemplul # 3

Pentru a utiliza funcția de căutare în Excel VBA, urmați pașii de mai jos:

Pasul 1: Scrieți subprocedura pentru VBA Lookup, așa cum se arată mai jos.

Cod:

 Sub VBA_Lookup3 () End Sub 

Pasul 2: Declarați o variabilă pentru Nume ca String, așa cum se arată mai jos.

Cod:

 Sub VBA_Lookup3 () Dim Nume Ca Sub String 

Pasul 3: Acum alocați numele care dorește căutarea la numele variabilei definite, așa cum se arată mai jos.

Cod:

 Sub VBA_Lookup3 () Nume Dim Ca Nume String = "Deepinder" End Sub 

Pasul 4: Acum folosiți orice cuvânt pentru a defini și utiliza căutare să spunem LUp . Și în această utilizare folosiți Funcția de lucru cu Vlookup așa cum se arată mai jos.

Cod:

 Sub VBA_Lookup3 () Numele Dim Ca String Name = "Deepinder" LUp = Application.WorksheetFunction.VLookup (MsgBox "Viteza medie este:" & LUp End Sub 

Pasul 5: Utilizați acum aceeași sintaxă Vlookup ca și în Excel. În Arg1 puneți variabila Nume, apoi selectați matricea intervalului și căutați valoarea pe care dorim să o obținem. Aici coloana respectivă este 3 așa cum se arată mai jos.

Cod:

 Sub VBA_Lookup3 () Dim Nume ca String Name = "Deepinder" LUp = Application.WorksheetFunction.VLookup (Name, Sheet1.Range ("A2: C6"), 3, False) MsgBox "Viteza medie este:" & LUp End Sub 

Pasul 6: Acum folosiți MsgBox pentru a vedea ieșirea.

Cod:

 Sub VBA_Lookup3 () Dim Nume ca String Name = "Deepinder" LUp = Application.WorksheetFunction.VLookup (Name, Sheet1.Range ("A2: C6"), 3, False) MsgBox "Viteza medie este:" & LUp End Sub 

Pasul 7: Compilați și rulați codul. Vom vedea, pentru numele „Deepinder”, viteza medie este de 88. În timp ce aceeași valoare este dată pentru numele Deepinder din tabel.

Cod:

 Sub VBA_Lookup3 () Dim Nume ca String Name = "Deepinder" LUp = Application.WorksheetFunction.VLookup (Name, Sheet1.Range ("A2: C6"), 3, False) MsgBox "Viteza medie este:" & LUp End Sub 

Beneficiile funcției de căutare Excel VBA

  • Este la fel de ușor de utilizat și de aplicat ca aplicarea regulată a formulelor Excel Vlookup în Excel.
  • Putem folosi orice tip de gamă și matrice în căutarea VBA.
  • La aplicarea VBA Lookup există foarte puține sau deloc restricții.

Lucruri de amintit

  • Putem folosi Lookup în locul Vlookup în orice situație.
  • Gama pentru vectorul Lookup și vectorul rezultat ar trebui să fie aceleași.
  • Odată făcută aplicația, salvați fișierul în format Macro Enable pentru a reține codul.
  • Nu există o cerință obligatorie pentru a pune coloana de rezultate de fiecare dată pentru a fi la dreapta valorii de căutare.

Articole recomandate

Acesta este un ghid pentru funcția de căutare VBA. Aici vom discuta despre cum să utilizăm funcția Lookup în Excel VBA, împreună cu exemple practice și șablon Excel descărcabil. De asemenea, puteți parcurge și alte articole sugerate -

  1. Colecția VBA (exemple)
  2. Declarații VBA IF | Șabloane Excel
  3. Cum se utilizează funcția de sortare Excel VBA?
  4. În timp ce bucla VBA (exemple cu șablonul Excel)
  5. VBA Environ

Categorie: