Funkcia pracovného listu VBA - Ako používať WorksheetFunction vo VBA?

Funkcie pracovného hárka programu Excel VBA

Funkcia pracovného hárka vo VBA sa používa, keď sa musíme odvolávať na konkrétny pracovný hárok, zvyčajne keď vytvoríme modul, kód sa vykoná v aktuálne aktívnom hárku zošita, ale ak chceme kód spustiť v konkrétnom pracovnom hárku, použijeme funkciu pracovného hárka, táto funkcia má rôzne použitie a aplikácie vo VBA.

Najlepšie na VBA je, ako napríklad to, ako podobne používame vzorce v pracovnom hárku, aj VBA má svoje vlastné funkcie. Ak je to najlepšie, potom má aj krásnu vec. To znamená, že „môžeme používať funkcie pracovných hárkov aj vo VBA.“

Áno!!! Počuli ste to dobre; môžeme tiež pristupovať k funkciám listu vo VBA. Počas písania kódu môžeme získať prístup k niektorým funkciám pracovného hárka a vytvoriť z neho súčasť nášho kódu.

Ako používať funkcie pracovného hárka vo VBA?

V pracovnom hárku všetky vzorce začínajú znakom rovná sa (=), podobne ako v prípade kódovania VBA, aby sme mali prístup k vzorcom v pracovnom hárku, mali by sme použiť slovo „WorksheetFunction“.

Predtým, ako zadáte akýkoľvek vzorec pracovného hárka, musíte spomenúť názov objektu „WorksheetFunction“, potom vložiť bodku (.), Potom získate zoznam všetkých dostupných funkcií pod týmto objektom.

V tomto článku sa zameriame výlučne na to, ako používať funkcie pracovného hárka pri kódovaní VBA, čo vašim znalostiam kódovania zvýši hodnotu.

# 1 - Jednoduché funkcie pracovného listu SUM

Ok, ak chcete začať s funkciami pracovného hárka, použite jednoduchú funkciu SUMA v programe Excel a pridajte čísla z hárka.

Predpokladajme, že v pracovnom hárku máte údaje o mesačných tržbách a nákladoch, ako je uvedené nižšie.

V B14 a C14 musíme dospieť k súčtu vyššie uvedených čísel. Podľa nasledujúcich pokynov spustíte proces použitia funkcie „SUM“ v programe Excel VBA.

Krok 1: Vytvorte jednoduchý názov makra programu Excel.

Kód:

Sub Worksheet_Function_Example1 () End Sub

Krok 2: Pretože potrebujeme výsledok v bunke B14, začnite kód ako Range („B14“)

Kód:

Sub Worksheet_Function_Example1 () Range ("B14"). Hodnota = End Sub

Krok 3: V B14 potrebujeme hodnotu ako výsledok súčtu čísel. Takže aby ste mali prístup k funkcii SUM z pracovného hárka, spustite kód ako „WorksheetFunction“.

Kód:

Vedľajší pracovný hárok_funkcia_príklad1 () rozsah ("B14"). Hodnota = pracovný hárok. Koniec Sub

Krok 4: V okamihu, keď vložíte bodku (.), Začnú sa zobrazovať dostupné funkcie. Z tohto vyberte SUM.

Kód:

Sub Worksheet_Function_Example1 () Range ("B14"). Hodnota = WorksheetFunction.Sum End Sub

Krok 5: Teraz uveďte odkaz na vyššie uvedené čísla, tj. Rozsah („B2: B13“).

Kód:

Sub Worksheet_Function_Example1 () Range ("B14"). Value = WorksheetFunction.Sum (Range ("B2: B13")) End Sub

Krok 6: Podobne pre ďalší stĺpec použite podobný kód tak, že zmeníte odkazy na bunky.

Kód:

Sub Worksheet_Function_Example1 () Range ("B14"). Value = WorksheetFunction.Sum (Range ("B2: B13")) Range ("C14"). Value = WorksheetFunction.Sum (Range ("C2: C13")) End Sub

Krok 7: Teraz spustite tento kód manuálne alebo pomocou klávesu F5, aby ste mali celkovo v bunkách B14 a C14.

Páni, dostali sme sa k našim hodnotám. Jedna vec, ktorú si tu musíte všimnúť, je, že v pracovnom hárku nemáme žiadny vzorec, ale práve sme dostali výsledok funkcie „SUM“ vo VBA.

# 2 - Použite VLOOKUP ako funkciu pracovného hárka

Uvidíme, ako použiť VLOOKUP vo VBA. Predpokladajme, že nižšie sú údaje, ktoré máte vo svojom excelovom liste.

V bunke E2 ste vytvorili rozbaľovací zoznam všetkých zón.

Based on the selection you made in the E2 cell, we need to fetch the Pin Code for the respective zone. But this time through VBA VLOOKUP, not worksheet VLOOKUP. Follow the below steps to apply VLOOKUP.

Step 1: Create a simple macro name in the Sub Procedure.

Code:

Sub Worksheet_Function_Example2() End Sub

Step 2: We need the result in the F2 cell. So start the code as Range (“F2”).Value =

Code:

Sub Worksheet_Function_Example2() Range ("F2").Value = End Sub

Step 3: To access the worksheet function, VLOOKUP starts the code as “WorksheetFunction.VLOOKUP.”

Code:

Sub Worksheet_Function_Example2() Range ("F2").Value = WorksheetFunction.Vlookup( End Sub

Step 4: One of the problems here is syntax will not give you any sort of guidance to work with VLOOKUP. You need to be absolutely sure about the syntax you are working on.

The first syntax of VLOOKUP is “Lookup Value.” In this case, our lookup value is E2 cell value, so write the code as Range (“E2”).Value

Code:

Sub Worksheet_Function_Example2() Range ("F2").Value = WorksheetFunction.Vlookup(Range ("E2").Value, End Sub

Step 5: Now, the second argument is our table array. In this case, our table array range is from A2 to B6. So the code will be Range (“A2:B6”)

Code:

Sub Worksheet_Function_Example2() Range ("F2").Value = WorksheetFunction.Vlookup(Range ("E2").Value,Range ("A2:B6"), End Sub

Step 6: The Third argument will be from which column we need the data from the table array. Here we need the data from the 2nd column, so the argument will be 2.

Code:

Sub Worksheet_Function_Example2() Range ("F2").Value = WorksheetFunction.Vlookup(Range ("E2").Value,Range ("A2:B6"),2, End Sub

Step 7: The final argument is range lookup, we need an exact match, so the argument is zero (0).

Code:

Sub Worksheet_Function_Example2() Range("F2").Value = WorksheetFunction.VLookup(Range("E2").Value, Range("A2:B6"), 2, 0) End Sub

So, we are done with the coding part. Now go to the worksheet and select any of the range.

Now go to your coding module and run the macro Using the F5 key or manually to get the pin code of the selected zone.

Nemôžeme sa vrátiť a spustiť makro zakaždým, preto priraďme makro k tvarom. Vložte jeden z tvarov do hárka.

Pridajte do vloženého tvaru textovú hodnotu.

Teraz kliknite pravým tlačidlom myši a tomuto tvaru priraďte názov makra.

Po výbere názvu makra kliknite na ok.

Teraz tento tvar obsahuje kód nášho vzorca VLOOKUP. Takže kedykoľvek zmeníte názov zóny, kliknite na tlačidlo, aktualizujú sa hodnoty.

Na čo treba pamätať

  • Pre prístup k funkciám pracovného hárka musíme napísať slovo „WorksheetFunction“ alebo „Application.WorksheetFunction“
  • Nemáme prístup ku všetkým funkciám, iba k niekoľkým.
  • Skutočná syntax funkcií hárka nevidíme, takže si musíme byť absolútne istí, akú funkciu používame.

Zaujímavé články...