VBA COUNTIF (príklady) - Ako používať funkciu COUNTIF v programe Excel VBA?

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.

Zaujímavé články...