VBA COUNTIF (příklady) | Jak používat funkci COUNTIF v aplikaci Excel VBA?

VBA COUNTIF

Funkce založené na kritériích jsou vládci aplikace Excel ve výpočtech. Na začátku učení aplikace Excel jsme se museli naučit funkci COUTNIF v aplikaci Excel. V našich dřívějších článcích jsme vám ukázali, jak pracovat s funkcí COUNTIF v aplikaci Excel VBA.

V našem článku o vzorce COUNTIF v aplikaci Excel najdete základní informace o funkci COUNTIF v aplikaci Excel VBA. V tomto článku vám ukážeme, jak používat stejnou funkci při kódování VBA. Nyní uvidíme stejný vzorec ve VBA. První věc, první COUNTIF není funkce VBA, je to spíše funkce listu, ke které lze přistupovat pod třídou funkcí listu.

Příklad funkce Excel VBA Countif

Dobře, podívejme se na jednoduchý příklad.

Tuto šablonu Excel funkce VBA Countif funkce si můžete stáhnout zde - Šablona Excel funkce VBA Countif

Podívejte se na níže uvedený stejný příklad počítání hodnot z dávky.

Na obrázku výše máme názvy měst od buňky A1 po A10. V buňce C3 musíme spočítat, kolikrát se název města „Bangalore“ objevil v rozsahu A1 až A10.

Dobře, podle níže uvedených kroků napište kód pro použití funkce COUNTIF.

Krok 1: Spusťte proceduru Sub.

Kód:

 Možnost Explicit Sub Countif_Example1 () End Sub 

Krok 2: Protože musíme výsledek uložit do buňky C3, spusťte kód jako Range („C3“). Hodnota.

Kód:

 Sub Countif_Example1 () Range ("C3"). Hodnota = End Sub 

Krok 3: V buňce C3 použitím funkce Excel VBA COUNTIF se snažíme dospět k výsledku. Takže pro přístup k funkci musíme nejprve použít třídu Worksheet Function.

Kód:

Sub Countif_Example1 () Range ("C3"). Hodnota = WorksheetFunction. End Sub

Krok 4: Ze ztracené vyberte funkci Excel VBA COUNTIF.

Kód:

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

Krok 5: Pokud se podíváte na parametry funkce VBA COUNTIF, nevidíme parametr, jak vidíme v listu.

Jak vidíme na výše uvedeném obrázku v listu, máme jasnou syntaxi, ale ve VBA vidíme pouze Arg 1 a Arg 2.

Arg 1 je Range, proto vyberte rozsah jako A1 až A10.

Kód:

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

Krok 6: Arg 2 je hodnota, kterou musíme počítat od rozsahu A1 do A10. V tomto příkladu musíme počítat „Bangalore“.

Kód:

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

Dobře, jsme hotovi.

Spuštěním kódu zobrazíte výsledek v buňce C3.

Výsledek jsme dostali jako 4. Protože název města „Bangalore“, který se objevil v buňce A1, A4, A7 a A10, funkce VBA COUNTIF vrátila výsledek jako 4.

Pokud vidíte, že kód VBA vrátil pouze výsledek vzorce, vzorec se v pruhu vzorců nezobrazí.

Abychom dosáhli vzorce, musíme napsat kód trochu jinak. Níže je uveden kód pro použití samotného vzorce na buňku.

Kód:

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

Tím se použije vzorec na buňku C3.

Výsledek dorazí s proměnnými

Proměnné jsou nedílnou součástí jakéhokoli kódovacího jazyka. Abychom mohli efektivně pracovat s kódem VBA, musíme deklarovat proměnné. Například se podívejte na níže uvedený kód.

Kód:

 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, CriteriaVange ) End Sub 

Dovolte mi dekódovat kód, abyste lépe porozuměli.

Nejprve jsem deklaroval dvě proměnné jako Range.

Dim ValuesRange As Range: Toto slouží k odkazování na seznam hodnot.

Dim ResultCell As Range: Toto slouží k odkazování na buňku výsledků.

Pak jsem nastavil rozsah odkazů na obě proměnné.

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

Set ResultCell = Range (“C3”): V této buňce uložíme výsledek funkce COUNTIF.

Mezitím jsem deklaroval jednu další proměnnou pro uložení hodnoty kritérií.

Dim CriteriaValue jako řetězec

CriteriaValue = “Bangalore”

Proměnná „CriteteriaValue“ tedy nyní má hodnotu „Bangalore“.

V dalším řádku jsem jako obvykle použil funkci COUTNIF.

ResultCell = WorksheetFunction.CountIf (ValuesRange, CriteriaValue)

Takto můžeme použít funkci COUNTIF v aplikaci Excel VBA, aby vyhovovala našim potřebám.