VBA COUNTIF
Funkcie založené na kritériách sú vládcami programu Excel vo výpočtoch. Na začiatku učenia sa programu Excel sme sa museli naučiť proces COUTNIF v programe Excel. V našich predchádzajúcich článkoch sme si ukázali, ako pracovať s funkciou COUNTIF v programe Excel VBA.
V našom článku o vzore COUNTIF v programe Excel nájdete základné informácie o funkcii COUNTIF v programe Excel VBA. V tomto článku si ukážeme, ako používať rovnakú funkciu pri kódovaní VBA. Teraz uvidíme rovnaký vzorec vo VBA. Prvá vec, prvá, COUNTIF nie je funkcia VBA; namiesto toho je to funkcia listu, ku ktorej je možné pristupovať v triede funkcií listu.

Príklad funkcie Excel VBA Countif
Dobre, pozrime sa na jednoduchý príklad.
Pozrite sa na rovnaký príklad výpočtu hodnôt z dávky.

Na obrázku vyššie máme názvy miest od bunky A1 po A10. V bunke C3 musíme spočítať, koľkokrát sa názov mesta „Bangalore“ objavil v rozmedzí od A1 do A10.
Dobre, podľa nasledujúcich pokynov napíšte kód na použitie funkcie COUNTIF.
Krok 1: Spustite postup Sub.
Kód:
Možnosť Explicit Sub Countif_Example1 () End Sub

Krok 2: Pretože musíme výsledok uložiť do bunky C3, začnite hodnotu rozsahu („C3“).
Kód:
Sub Countif_Example1 () Range ("C3"). Hodnota = End Sub

Krok 3: V bunke C3 sa použitím funkcie Excel VBA COUNTIF snažíme dospieť k výsledku. Pre prístup k funkcii teda musíme najskôr použiť triedu Worksheet Function.
Kód:
Sub Countif_Example1 () Range ("C3"). Hodnota = WorksheetFunction. Koniec Sub

Krok 4: Zo strateného vyberte funkciu Excel VBA COUNTIF.
Kód:
Sub Countif_Example1 () Range ("C3"). Hodnota = WorksheetFunction.CountIf (End Sub

Krok 5: Ak sa pozriete na parametre funkcie VBA COUNTIF, nevidíme parameter, ako vidíme v pracovnom hárku.

Ako vidíme na obrázku vyššie v pracovnom hárku, máme presnú syntax, ale vo VBA vidíme iba Arg 1 a Arg 2.
Arg 1 je Range, takže vyberte rozsah ako A1 až A10.
Kód:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (Range ("A1: A10"), End Sub

Krok 6: Arg 2 je hodnota, ktorú musíme počítať od rozsahu A1 do A10. V tomto príklade musíme vypočítať „Bangalore“.
Kód:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (Range ("A1: A10"), "Bangalore") End Sub

Dobre, skončili sme.
Spustením kódu zobrazíte výsledok v bunke C3.

Výsledok sme dostali ako 4. Pretože názov mesta „Bangalore“, ktorý sa objavuje v bunkách A1, A4, A7 a A10, funkcia VBA COUNTIF vrátila produkt ako 4.
Ak vidíte, že kód VBA vrátil iba výsledok vzorca, nepoznáme postup v riadku vzorcov.

Aby sme sa dostali k vzorcu, musíme napísať kód trochu inak. Nižšie uvádzame kód na použitie samotného vzorca na bunku.
Kód:
Sub Countif_Example1 () Range ("C3"). Formula = "= CountIf (A1: A10," "Bangalore" ")" End Sub
Týmto sa použije vzorec na bunku C3.

Výsledok sa dostaví s premennými
Premenné sú neoddeliteľnou súčasťou každého kódovacieho jazyka. Musíme deklarovať premenné, aby sme efektívne pracovali s kódom VBA. Napríklad si pozrite nasledujúci 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, 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”
Takže teraz premenná „CriteteriaValue“ má hodnotu „Bangalore“.
V ďalšom riadku som ako obvykle použil funkciu COUTNIF.
ResultCell = WorksheetFunction.CountIf (ValuesRange, CriteriaValue)
Takto môžeme použiť funkciu COUNTIF v programe Excel VBA, aby vyhovovala našim potrebám.