Funkcja arkusza VBA - Jak korzystać z funkcji arkusza roboczego w VBA?

Funkcje arkusza kalkulacyjnego Excel VBA

Funkcja arkusza w VBA jest wykorzystywana, gdy musimy odwołać się do konkretnego arkusza roboczego, normalnie, gdy tworzymy moduł, kod wykonuje się w aktualnie aktywnym arkuszu skoroszytu, ale jeśli chcemy wykonać kod w określonym arkuszu, używamy funkcji arkusza, ta funkcja ma różne zastosowania i aplikacje w VBA.

Najlepszą rzeczą w VBA jest to, że podobnie jak w przypadku korzystania z formuł w arkuszu roboczym, VBA również ma swoje własne funkcje. Jeśli to jest najlepsze, to ma też coś pięknego. Oznacza to, że „możemy używać funkcji arkusza również w VBA”.

Tak!!! Słyszałeś to dobrze; możemy również uzyskać dostęp do funkcji arkusza w VBA. Możemy uzyskać dostęp do niektórych funkcji arkusza podczas pisania kodu i uczynić go częścią naszego kodu.

Jak korzystać z funkcji arkusza roboczego w VBA?

W arkuszu wszystkie formuły zaczynają się od znaku równości (=), podobnie w kodowaniu VBA, aby uzyskać dostęp do formuł arkusza, powinniśmy użyć słowa „Funkcja arkusza roboczego”.

Zanim wprowadzisz jakąkolwiek formułę arkusza roboczego, musisz podać nazwę obiektu „WorksheetFunction”, a następnie wstawić kropkę (.), A otrzymasz listę wszystkich dostępnych funkcji pod tym obiektem.

W tym artykule skupimy się wyłącznie na tym, jak korzystać z funkcji arkusza w kodowaniu VBA, co zwiększy Twoją wiedzę o kodowaniu.

# 1 - Proste funkcje arkusza SUMA

Ok, aby zacząć od funkcji arkusza, zastosuj prostą funkcję SUMA w programie Excel, aby dodać liczby z arkusza.

Załóżmy, że w arkuszu znajdują się miesięczne dane dotyczące sprzedaży i kosztów, takie jak poniższy.

W B14 i C14 musimy uzyskać sumę powyższych liczb. Wykonaj poniższe kroki, aby rozpocząć proces stosowania funkcji „SUMA” w programie Excel VBA.

Krok 1: Utwórz prostą nazwę makra programu Excel.

Kod:

Sub Worksheet_Function_Example1 () End Sub

Krok 2: Ponieważ potrzebujemy wyniku w komórce B14, uruchom kod jako Range („B14”). Wartość =

Kod:

Sub Worksheet_Function_Example1 () Range („B14”). Wartość = End Sub

Krok 3: W B14 potrzebujemy wartości będącej wynikiem sumy liczb. Aby więc uzyskać dostęp do funkcji SUMA z arkusza, uruchom kod jako Funkcja arkusza roboczego”.

Kod:

Sub Worksheet_Function_Example1 () Range („B14”). Value = WorksheetFunction. Napis końcowy

Krok 4: W momencie wstawienia kropki (.) Zacznie się wyświetlać dostępne funkcje. Więc wybierz SUMA z tego.

Kod:

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

Krok 5: Teraz podaj odniesienie do powyższych liczb, tj. Range („B2: B13”).

Kod:

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

Krok 6: Podobnie w przypadku następnej kolumny zastosuj podobny kod, zmieniając odwołania do komórek.

Kod:

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 uruchom ten kod ręcznie lub za pomocą klawisza F5, aby uzyskać sumę w komórkach B14 i C14.

Wow, mamy nasze wartości. Jedną rzeczą, na którą musisz zwrócić uwagę, jest to, że nie mamy żadnej formuły w arkuszu, ale właśnie otrzymaliśmy wynik funkcji „SUMA” w języku VBA.

# 2 - Użyj funkcji WYSZUKAJ.PIONOWO jako funkcji arkusza

Zobaczymy, jak korzystać z funkcji WYSZUKAJ.PIONOWO w VBA. Załóżmy, że poniżej znajdują się dane, które masz w arkuszu Excela.

W komórce E2 utworzyłeś rozwijaną listę wszystkich stref.

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.

Nie możemy cofać się i uruchamiać makra za każdym razem, więc przypiszmy makro do kształtów. Wstaw jeden z kształtów do arkusza.

Dodaj wartość tekstową do wstawionego kształtu.

Teraz kliknij prawym przyciskiem myszy i przypisz nazwę makra do tego kształtu.

Kliknij OK po wybraniu nazwy makra.

Teraz ten kształt zawiera kod naszej formuły WYSZUKAJ.PIONOWO. Więc za każdym razem, gdy zmienisz nazwę strefy, kliknij przycisk, zaktualizuje wartości.

Rzeczy do zapamiętania

  • Aby uzyskać dostęp do funkcji arkusza roboczego, musimy wpisać słowo „WorksheetFunction” lub „Application.WorksheetFunction”
  • Nie mamy dostępu do wszystkich funkcji, tylko do kilku.
  • Nie widzimy rzeczywistej składni funkcji arkusza, więc musimy być absolutnie pewni funkcji, której używamy.

Interesujące artykuły...