VBA COUNTIF
Funcțiile bazate pe criterii sunt conducătorii excel în calcule. La începutul învățării excelului, trebuie să fi învățat procesul COUTNIF în excel. În articolele noastre anterioare, v-am arătat cum să lucrați cu funcția COUNTIF în Excel VBA.
Consultați articolul nostru despre Formula COUNTIF în Excel pentru a cunoaște elementele de bază ale funcției COUNTIF în Excel VBA. În acest articol, vă vom arăta cum să utilizați aceeași funcție în codarea VBA. Acum vom vedea aceeași formulă în VBA. În primul rând, COUNTIF nu este o funcție VBA; în schimb, este o funcție de foaie de lucru care poate fi accesată în clasa de funcții de foaie de lucru.

Exemplu de funcție Excel VBA Countif
Ok, să vedem exemplul simplu.
Uitați-vă la același exemplu de mai jos de numărare a valorilor din lot.

În imaginea de mai sus, avem nume de orașe de la celula A1 la A10. În celula C3, trebuie să numărăm de câte ori numele orașului „Bangalore” apare în intervalul A1 până la A10.
Ok, urmați pașii de mai jos pentru a scrie codul pentru a aplica funcția COUNTIF.
Pasul 1: Porniți procedura Sub.
Cod:
Opțiune Explicit Sub Countif_Example1 () End Sub

Pasul 2: Deoarece trebuie să stocăm rezultatul în celula C3, porniți Range („C3”). Valoare.
Cod:
Sub Countif_Example1 () Range ("C3"). Valoare = End Sub

Pasul 3: În celula C3, aplicând funcția Excel VBA COUNTIF, încercăm să ajungem la rezultat. Deci, pentru a accesa funcția, trebuie mai întâi să folosim clasa Funcția Foaie de lucru.
Cod:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction. Sfârșitul Sub

Pasul 4: Din funcția Excel selectată VBA COUNTIF pierdută.
Cod:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (End Sub

Pasul 5: Dacă vă uitați la parametrii funcției VBA COUNTIF, nu vom vedea parametrul, așa cum vedem în foaia de lucru.

După cum putem vedea în imaginea de mai sus din foaia de lucru, avem sintaxă exactă, dar în VBA, putem vedea doar Arg 1 și Arg 2.
Arg 1 este Range, deci selectați intervalul de la A1 la A10.
Cod:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (Range ("A1: A10"), End Sub

Pasul 6: Arg 2 este valoarea pe care trebuie să o numărăm din intervalul A1 până la A10. În acest exemplu, trebuie să calculăm „Bangalore”.
Cod:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (Range ("A1: A10"), "Bangalore") End Sub

Ok, am terminat.
Rulați codul pentru a vedea rezultatul în celula C3.

Am obținut rezultatul ca 4. Deoarece numele orașului „Bangalore” care apare în celulele A1, A4, A7 și A10, funcția VBA COUNTIF a returnat produsul ca 4.
Dacă puteți vedea codul VBA a returnat doar rezultatul formulei, nu vom cunoaște procedura din bara de formule.

Pentru a ajunge la formulă, trebuie să scriem codul ușor diferit. Mai jos este codul pentru a aplica formula în sine celulei.
Cod:
Sub Countif_Example1 () Range ("C3"). Formula = "= CountIf (A1: A10," "Bangalore" ")" End Sub
Aceasta va aplica formula celulei C3.

Sosiți rezultatul cu variabile
Variabilele sunt o parte integrantă a oricărui limbaj de codare. Trebuie să declarăm variabile pentru a funcționa eficient cu codul VBA. De exemplu, uitați-vă la codul de mai jos.
Cod:
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 ) Sfârșitul Sub
Permiteți-mi să decodez codul pentru a înțelege mai bine.
În primul rând, am declarat cele două variabile ca Range.
Dim ValuesRange As Range: Aceasta este pentru a face referire la lista de valori.
Dim ResultCell As Range: pentru a face referire la celula de rezultat.
Apoi am setat gama de referințe la ambele variabile.
Set ValuesRange = Range („A1: A10”): Acesta este intervalul în care se află toate numele orașelor.
Setați ResultCell = Range („C3”): În această celulă, vom stoca rezultatul funcției COUNTIF.
Între timp, am declarat încă o variabilă pentru a stoca valoarea criteriilor.
Dim CriteriaValue As String
CriteriaValue = „Bangalore”
Deci, acum variabila „CriteteriaValue” deține valoarea „Bangalore”.
În rândul următor, ca de obicei, am aplicat funcția COUTNIF.
ResultCell = WorksheetFunction.CountIf (ValuesRange, CriteriaValue)
Astfel, putem aplica funcția COUNTIF în Excel VBA pentru a se potrivi nevoilor noastre.