VBA LICZ.JEŻELI (przykłady) - Jak korzystać z funkcji COUNTIF w Excel VBA?

Spisie treści

VBA LICZ.JEŻELI

Funkcje oparte na kryteriach są linijkami programu Excel w obliczeniach. Na początku nauki programu Excel musieliśmy nauczyć się procesu COUTNIF w programie Excel. W naszych wcześniejszych artykułach pokazaliśmy, jak pracować z funkcją LICZ.JEŻELI w Excel VBA.

Zapoznaj się z naszym artykułem na temat wzoru LICZ.JEŻELI w programie Excel, aby poznać podstawy funkcji LICZ.JEŻELI w programie Excel VBA. W tym artykule pokażemy, jak używać tej samej funkcji w kodowaniu VBA. Teraz zobaczymy tę samą formułę w VBA. Po pierwsze, COUNTIF nie jest funkcją VBA; zamiast tego jest to funkcja arkusza, do której można uzyskać dostęp w ramach klasy funkcji arkusza.

Przykład funkcji Countif Excel VBA

Ok, zobaczmy prosty przykład.

Spójrz na ten sam przykład zliczania wartości z partii.

Na powyższym obrazku mamy nazwy miast z komórek A1 do A10. W komórce C3 musimy policzyć, ile razy nazwa miasta „Bangalore” pojawia się w zakresie od A1 do A10.

OK, wykonaj poniższe kroki, aby napisać kod, aby zastosować funkcję LICZ.JEŻELI.

Krok 1: Rozpocznij procedurę Sub.

Kod:

Option Explicit Sub Countif_Example1 () End Sub

Krok 2: Ponieważ musimy zapisać wynik w komórce C3, rozpocznij Range („C3”).

Kod:

Sub Countif_Example1 () Range („C3”). Value = End Sub

Krok 3: W komórce C3, stosując funkcję excel VBA COUNTIF, próbujemy dojść do wyniku. Aby uzyskać dostęp do funkcji, musimy najpierw użyć klasy Worksheet Function.

Kod:

Sub Countif_Example1 () Range („C3”). Value = WorksheetFunction. Napis końcowy

Krok 4: Z utraconej funkcji wybierz Excel VBA COUNTIF.

Kod:

Sub Countif_Example1 () Range („C3”). Value = WorksheetFunction.CountIf (End Sub

Krok 5: Jeśli spojrzysz na parametry funkcji VBA COUNTIF, nie widzimy parametru, jak widzimy w arkuszu.

Jak widać na powyższym obrazku w arkuszu, mamy dokładną składnię, ale w VBA widzimy tylko Arg 1 i Arg 2.

Arg 1 to Zakres, więc wybierz zakres od A1 do A10.

Kod:

Sub Countif_Example1 () Range („C3”). Value = WorksheetFunction.CountIf (Range („A1: A10”), End Sub

Krok 6: Arg 2 to wartość, którą musimy policzyć z zakresu od A1 do A10. W tym przykładzie musimy obliczyć „Bangalore”.

Kod:

Sub Countif_Example1 () Range („C3”). Value = WorksheetFunction.CountIf (Range („A1: A10”), „Bangalore”) End Sub

OK, gotowe.

Uruchom kod, aby zobaczyć wynik w komórce C3.

Otrzymaliśmy wynik jako 4. Ponieważ nazwa miasta „Bangalore” pojawiająca się w komórkach A1, A4, A7 i A10 funkcja VBA LICZ.JEŻELI zwróciła produkt jako 4.

If you can see VBA code has returned only the result of the formula, we don’t get to know the procedure in the formula bar.

To arrive at the formula, we need to write the code slightly differently. Below is the code for you to apply the formula itself to the cell.

Code:

Sub Countif_Example1() Range("C3").Formula = "=CountIf(A1:A10, ""Bangalore"")" End Sub

This will apply the formula to the cell C3.

Arrive Result with Variables

Variables are an integral part of any coding language. We need to declare variables to work efficiently with the VBA code. For example, look at the below code.

Code:

Sub Countif_Example2() Dim ValuesRange As Range Dim ResultCell As Range Dim CriteriaValue As String Set ValuesRange = Range("A1:A10") Set ResultCell = Range("C3") CriteriaValue = "Bangalore" ResultCell = WorksheetFunction.CountIf(ValuesRange, CriteriaValue) End Sub

Let me decode the code for you to understand better.

Firstly I have declared the two variables as Range.

Dim ValuesRange As Range: This is to reference the list of values.

Dim ResultCell As Range: This to reference the result cell.

Then I have set the range of references to both the variables.

Set ValuesRange = Range(“A1: A10”): This is the range where all the city names are there.

Set ResultCell = Range(“C3”): In this cell, we will store the result of the COUNTIF function.

In the meantime, I have declared one more variable to store the criteria value.

Dim CriteriaValue As String

CriteriaValue = „Bangalore”

Więc teraz zmienna „CriteteriaValue” zawiera wartość „Bangalore”.

W następnym wierszu, jak zwykle, zastosowałem funkcję COUTNIF.

ResultCell = WorksheetFunction.CountIf (ValuesRange, CriteriaValue)

W ten sposób możemy zastosować funkcję LICZ.JEŻELI w Excel VBA, aby dopasować się do naszych potrzeb.

Interesujące artykuły...