VBA COUNTIF (pavyzdžiai) | Kaip naudoti „COUNTIF“ funkciją „Excel VBA“?

VBA SKAIČIUS

Kriterijomis pagrįstos funkcijos yra „Excel“ valdovai skaičiuojant. „Excel“ mokymosi pradžioje mes turime išmokti „COUTNIF“ funkciją „Excel“. Ankstesniuose straipsniuose parodėme, kaip dirbti su „COUNTIF“ funkcija „Excel VBA“.

Norėdami sužinoti „COUNTIF“ funkcijos „Excel VBA“ pagrindus, skaitykite mūsų straipsnį apie „COUNTIF“ formulę „Excel“. Šiame straipsnyje mes parodysime, kaip naudoti tą pačią funkciją VBA koduojant. Dabar tą pačią formulę pamatysime ir VBA. Pirmas dalykas, pirmiausia, COUNTIF nėra VBA funkcija, o tai yra darbalapio funkcija, kurią galima pasiekti pagal darbalapio funkcijų klasę.

„Excel VBA Countif“ funkcijos pavyzdys

Gerai, pažiūrėkime paprastą pavyzdį.

Šį „VBA Countif Function Excel“ šabloną galite atsisiųsti čia - „VBA Countif Function Excel“ šablonas

Pažiūrėkite į tą patį vertės skaičiavimo iš partijos pavyzdį.

Aukščiau pateiktame paveikslėlyje mes turime miestų pavadinimus nuo langelio A1 iki A10. C3 langelyje turime suskaičiuoti, kiek kartų miesto pavadinimas „Bangalore“ rodomas diapazone nuo A1 iki A10.

Gerai, atlikite toliau nurodytus veiksmus, norėdami parašyti kodą, kad pritaikytumėte funkciją COUNTIF.

1 veiksmas: pradėkite antrinę procedūrą.

Kodas:

 Parinktis „Aiškus sub“ Countif_Example1 () „End Sub“ 

2 žingsnis: Kadangi turime saugoti rezultatą C3 langelyje, pradėkite kodą kaip diapazoną („C3“).

Kodas:

 Sub Countif_Example1 () diapazonas ("C3"). Reikšmė = End Sub 

3 žingsnis: C3 langelyje, pritaikydami „Excel VBA COUNTIF“ funkciją, bandome pasiekti rezultatą. Taigi, norėdami pasiekti funkciją, pirmiausia turime naudoti „Worksheet Function“ klasę.

Kodas:

Sub Countif_Example1 () diapazonas ("C3"). Reikšmė = WorksheetFunction. Pabaigos sub

4 žingsnis: Iš prarasto pasirinkimo „Excel VBA COUNTIF“ funkcija.

Kodas:

 Sub Countif_Example1 () diapazonas ("C3"). Reikšmė = WorksheetFunction.CountIf (End Sub 

5 žingsnis: Jei pažvelgsite į VBA COUNTIF funkcijos parametrus, nematome parametro, kaip matome darbalapyje.

Kaip matome aukščiau esančiame darbalapio paveikslėlyje, turime aiškią sintaksę, tačiau VBA matome tik Arg 1 ir Arg 2.

Arg 1 yra diapazonas, todėl pasirinkite diapazoną nuo A1 iki A10.

Kodas:

 Sub Countif_Example1 () Range ("C3"). Reikšmė = WorksheetFunction.CountIf (Range ("A1: A10"), End Sub 

6 žingsnis: Arg 2 yra ta vertė, kurią turime suskaičiuoti nuo A1 iki A10 diapazono. Šiame pavyzdyje turime suskaičiuoti „Bangalore“.

Kodas:

 Sub Countif_Example1 () Range ("C3"). Reikšmė = WorksheetFunction.CountIf (Range ("A1: A10"), "Bangalore") Pabaiga Sub 

Gerai, mes baigėme.

Paleiskite kodą, kad pamatytumėte rezultatą C3 langelyje.

Rezultatą gavome kaip 4. Kadangi miesto pavadinimas „Bangalore“, rodomas langelyje A1, A4, A7 ir A10 VBA COUNTIF, grąžino rezultatą kaip 4.

Jei matote, kad VBA kodas grąžino tik formulės rezultatą, formulės juostoje nematome formulės.

Norėdami gauti formulę, kodą turime parašyti šiek tiek kitaip. Žemiau yra kodas, kurį galite pritaikyti pačiai formulei langelyje.

Kodas:

 Sub Countif_Example1 () diapazonas ("C3"). Formulė = "= CountIf (A1: A10," "Bangalore" ")" Pabaiga Sub 

Tai pritaikys formulę ląstelei C3.

Gauti rezultatą su kintamaisiais

Kintamieji yra neatsiejama bet kurios kodavimo kalbos dalis. Turime paskelbti, kad kintamieji efektyviai veikia su VBA kodu. Pavyzdžiui, pažvelkite į žemiau pateiktą kodą.

Kodas:

 Sub Countif_Example2 () Dim Dimues 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 ) Pabaigos sub 

Leiskite man iššifruoti kodą, kad galėtumėte geriau suprasti.

Pirmiausia aš paskelbiau du kintamuosius kaip diapazoną.

„Dim ValuesRange As Range“: tai nuoroda į verčių sąrašą.

„Dim ResultCell As Range“: tai nurodo rezultato langelį.

Tada aš nustatiau abiejų kintamųjų nuorodų diapazoną.

Set ValuesRange = Range („A1: A10“): Čia yra visi miestų pavadinimai.

Nustatyti ResultCell = Range („C3“): Šiame langelyje išsaugosime funkcijos COUNTIF rezultatą.

Tuo tarpu aš paskelbiau dar vieną kintamąjį, kad išsaugočiau kriterijų vertę.

„Dim CriteriaValue“ kaip eilutė

CriteriaValue = „Bangaloras“

Taigi dabar kintamasis „CriteteriaValue“ turi reikšmę „Bangalore“.

Kitoje eilutėje, kaip įprasta, pritaikiau funkciją COUTNIF.

ResultCell = WorksheetFunction.CountIf (ValuesRange, CriteriaValue)

Taip galime pritaikyti „COUNTIF“ funkciją „Excel VBA“, kad atitiktų mūsų poreikius.