VBA AANTAL.ALS
Op criteria gebaseerde functies zijn de heersers van Excel bij berekeningen. Aan het begin van het leren van Excel, moeten we het COUTNIF-proces in Excel hebben geleerd. In onze eerdere artikelen hebben we u laten zien hoe u met de AANTAL.ALS-functie in Excel VBA kunt werken.
Raadpleeg ons artikel over AANTAL.ALS-formule in Excel om de basisprincipes van de AANTAL.ALS-functie in Excel VBA te kennen. In dit artikel laten we u zien hoe u dezelfde functie kunt gebruiken in VBA-codering. Nu zullen we dezelfde formule zien in VBA. Allereerst is AANTAL.ALS geen VBA-functie; in plaats daarvan is het een werkbladfunctie die toegankelijk is onder de werkbladfunctieklasse.

Voorbeeld van Excel VBA Countif-functie
Oké, laten we eens kijken naar het eenvoudige voorbeeld.
Bekijk het onderstaande voorbeeld van telwaarden uit de partij.

In de bovenstaande afbeelding hebben we plaatsnamen van cel A1 tot A10. In cel C3 moeten we tellen hoe vaak de stadsnaam “Bangalore” voorkomt in het bereik A1 tot A10.
Ok, volg de onderstaande stappen om de code te schrijven om de AANTAL.ALS-functie toe te passen.
Stap 1: Start de Sub-procedure.
Code:
Optie Expliciete Sub Countif_Example1 () End Sub

Stap 2: Aangezien we het resultaat moeten opslaan in cel C3, start u de waarde Bereik ("C3").
Code:
Sub Countif_Example1 () Bereik ("C3") Waarde = End Sub

Stap 3: In cel C3, door de Excel VBA AANTAL.ALS-functie toe te passen, proberen we tot het resultaat te komen. Dus om toegang te krijgen tot de functie, moeten we eerst de klasse Worksheet Function gebruiken.
Code:
Sub Countif_Example1 () Bereik ("C3"). Waarde = WorksheetFunction. Einde Sub

Stap 4: Van de verloren geselecteerde Excel VBA AANTAL.ALS-functie.
Code:
Sub Countif_Example1 () Bereik ("C3"). Value = WorksheetFunction.CountIf (End Sub

Stap 5: Als je naar de parameters van de VBA AANTAL.ALS-functie kijkt, zien we de parameter niet, zoals we in het werkblad zien.

Zoals we in de bovenstaande afbeelding in het werkblad kunnen zien, hebben we een exacte syntaxis, maar in VBA kunnen we alleen Arg 1 en Arg 2 zien.
Arg 1 is Bereik, dus selecteer het bereik als A1 tot A10.
Code:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (Range ("A1: A10"), End Sub

Stap 6: Arg 2 is de waarde die we nodig hebben om te tellen van het bereik A1 tot A10. In dit voorbeeld moeten we 'Bangalore' berekenen.
Code:
Sub Countif_Example1 () Range ("C3"). Value = WorksheetFunction.CountIf (Range ("A1: A10"), "Bangalore") End Sub

Ok, we zijn klaar.
Voer de code uit om het resultaat in cel C3 te zien.

We kregen het resultaat als 4. Aangezien de plaatsnaam "Bangalore" in cel A1, A4, A7 en A10 verscheen, retourneerde de VBA AANTAL.ALS-functie het product als 4.
Als u kunt zien dat VBA-code alleen het resultaat van de formule heeft geretourneerd, leren we de procedure in de formulebalk niet kennen.

Om tot de formule te komen, moeten we de code iets anders schrijven. Hieronder staat de code waarmee u de formule zelf op de cel kunt toepassen.
Code:
Sub Countif_Example1 () Bereik ("C3"). Formula = "= CountIf (A1: A10," "Bangalore" ")" End Sub
Hiermee wordt de formule toegepast op de cel C3.

Kom tot resultaat met variabelen
Variabelen zijn een integraal onderdeel van elke codeertaal. We moeten variabelen declareren om efficiënt met de VBA-code te werken. Kijk bijvoorbeeld naar de onderstaande code.
Code:
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"
Dus nu bevat de variabele 'CriteteriaValue' de waarde 'Bangalore'.
In de volgende regel heb ik, zoals gewoonlijk, de COUTNIF-functie toegepast.
ResultCell = WorksheetFunction.CountIf (ValuesRange, CriteriaValue)
Op deze manier kunnen we de AANTAL.ALS-functie in Excel VBA toepassen om aan onze behoeften te voldoen.