VBA Application.Match - Vodič korak po korak s primjerima

Excel VBA aplikacija.Match

Jedna od najboljih stvari o VBA je što ima svoju funkciju, a također će nam omogućiti pristup svim funkcijama radnog lista u klasi "Funkcija radnog lista". Sigurno ste već koristili funkciju MATCH kao funkciju radnog lista, ali ona nije VBA funkcija, pa moramo pristupiti u klasi funkcije radnog lista. U ovom ćemo vam članku pokazati kako koristiti funkciju MATCH u VBA pomoću Application metode.

Brzo sažimanje funkcije MATCH

MATCH je funkcija pretraživanja koja traži položaj vrijednosti pretraživanja u spomenutom nizu pretraživanja. Na primjer, pogledajte donju sliku podataka.

U gornjim podacima imamo mjesece od A2 do A6, a ako želimo znati na kojem mjestu se događa mjesec “ožujak”, tada možemo koristiti funkciju MATCH.

Ispod je sintaksa funkcije MATCH.

MATCH (Lookup Value, Lookup Array, (Type Match))
  • Vrijednost pretraživanja: Za koju vrijednost tražimo poziciju u nizu traženja.
  • Lookup Array: U kojem nizu tražimo položaj vrijednosti pretraživanja.
  • (Vrsta podudaranja): Za to možemo navesti tri argumenta.
  1. 1 = Manje od
  2. 0 = Točno podudaranje
  3. -1 = veće od

Većinu vremena koristimo samo "0 točno podudaranje".

Kako koristiti funkciju Application.Match u VBA?

Primjer # 1

Pogledajte dolje navedene podatke u Excelu.

Iz gornjih podataka moramo pronaći položaj mjeseca "ožujka" u rasponu stanica od A2 do A6. Budući da trebamo rezultate u D2 stanicama, odmah započnite kôd kao Raspon ("D2"). Vrijednost =.

Da bismo stigli do vrijednosti u ćeliji D2, trebamo koristiti funkciju MATCH radnog lista, pa da bismo prvo pristupili ovome, trebamo pristupiti objektu APPLICATION, a zatim objektu WORKSHEET FUNCTION.

Unesite točku da biste vidjeli popis funkcija radnog lista.

Odaberite "Podudaranje" s popisa.

Jedan od problema u VBA tijekom korištenja funkcija radnog lista je da ne vidimo točnu sintaksu kao što je to slučaj s funkcijom radnog lista. To je jedan od razloga što smo sintaksu objasnili samo na početku.

Dakle, prvi argument je vrijednost pretraživanja, tj. Za koju vrijednost tražimo mjesto. U ovom slučaju, tražimo mjesto za "Mar" koje se nalazi u ćeliji C2, zato navedite referencu ćelije.

Sljedeći je argument polje pretraživanja, tj. U kojem opsegu tražimo položaj vrijednosti pretraživanja za ove opskrbne ćelije od A2 do A6.

Posljednji argument bit će točno podudaranje, pa navedite 0.

Kodirati:

Sub Match_Example1 () Raspon ("D2"). Vrijednost = Application.WorksheetFunction.Match (Raspon ("C2"). Vrijednost, raspon ("A2: A6"), 0) Kraj Sub

Ok, gotovi smo s formulom.

Pokrenite kod kroz tipku F5 i pogledajte što ćemo dobiti.

Tako smo dobili rezultat kao 3, jer je vrijednost "Mar" na mjestu 3. mjesta u rasponu od A2 do A6.

Ova funkcija MATCH može pružiti položaj vrijednosti pretraživanja. Međutim, funkcija MATCH uglavnom se koristi s funkcijom VLOOKUP za opskrbu indeksnog broja stupca na temelju zaglavlja stupca.

Primjer # 2

Sada ćemo vidjeti kako se MATCH koristi kao pomoćna funkcija za funkciju VLOOKUP.

Pogledajte podatke u nastavku.

U gornjoj tablici gledamo prodaju u mjesecu "veljača" za 2018. godinu, pa moramo koristiti funkciju VLOOKUP. VLOOKUP je također funkcija radnog lista, pa pristupite ovome poput načina na koji smo pristupili funkciji MATCH.

Vrijednost pretraživanja bit će G2 ćelija, pa navedite adresu ćelije.

Kodirati:

Sub Match_Example2() Range("H2").Value = Application.WorksheetFunction.VLookup(Range("G2").Value, End Sub

Table Array will be from A2 to D6.

Code:

Sub Match_Example2() Range("H2").Value = Application.WorksheetFunction.VLookup(Range("G2").Value,Range("A2:D6"), End Sub

Now we need to provide from which column of the table array we are looking for the result, so this will be from the 3rd column. Instead of supplying the column number as 3, let’s use the MATCH function.

Code:

Sub Match_Example2() Range("H2").Value = Application.WorksheetFunction.VLookup(Range("G2").Value, Range("A2:D6"), Application.WorksheetFunction.Match(Range("H1").Value, Range("A1:D1"), 0), 0) End Sub

Dakle, funkcija MATCH pruža broj stupca od raspona A1 do D1 za mjesec "veljača". Pokrenimo kôd i vidjet ćemo kako automatski dobiva brojeve stupaca.

Eto, imamo rezultat iz stupca broj 2 zahvaljujući automatskom unosu broja stupca iz funkcije MATCH.

Stvari koje treba zapamtiti

  • Funkcija MATCH traži položaj vrijednosti pretraživanja u odabranoj tablici polja.
  • Funkcija MATCH uglavnom se koristi s funkcijom VLOOKUP za automatsko unošenje broja indeksa stupca pomoću naslova stupca.
  • Funkcija MATCH dostupna je kao funkcija radnog lista u VBA-u.

Zanimljivi članci...