Funkce Excel VBA COUNTA

Pravděpodobně jste často používali funkce COUNT a COUNTA v aplikaci Microsoft Excel. Kde COUNT zachycuje všechny číselné hodnoty v buňce, COUNTA zachycuje všechny neprázdné buňky (včetně řetězců). Je možné jakýmkoli způsobem použít funkci COUNTA prostřednictvím VBA? Rozhodně ano! Můžete použít funkci COUNTA prostřednictvím VBA jako funkci listu (protože je součástí rodiny WorksheetFunction uvnitř VBA) a spočítat neprázdné buňky v daném rozsahu listu. Výhodou funkce COUNTA oproti funkci COUNT je - může počítat cokoli (čísla, řetězce, speciální znaky, chybové hodnoty atd.) Kromě prázdných buněk v daném rozsahu, zatímco COUNT může počítat pouze počet buněk, které tvoří číselné hodnoty .

Syntaxe VBA COUNTA:

Syntaxe funkce VBA COUNTA je uvedena níže:

Kde,

Arg1 - Určuje argument pro tuto funkci, který je povinný a může převzít jakoukoli neprázdnou hodnotu, jako je číslo, řetězec, chybové hodnoty (jako # N / A, # DIV / 0!), Speciální znaky atd. Ostatní argumenty jsou ostatní volitelný.

Tato funkce může přijmout maximálně 30 argumentů při jednom volání. Argument může obsahovat řadu buněk nebo jednu hodnotu, která se zadává ručně.

Jak používat funkci COUNTA v aplikaci Excel VBA?

Níže jsou uvedeny různé příklady použití funkce COUNTA v Excelu pomocí kódu VBA.

Tuto šablonu Excel VBA COUNTA si můžete stáhnout zde - Šablonu Excel VBA COUNTA

Příklad č. 1 - VBA COUNTA s ručními argumenty jako vstupem

Uvidíme, jak funguje funkce COUNTA, když jí poskytneme ruční argumenty ve VBA. Postupujte podle níže uvedených kroků:

Krok 1: Vložte nový modul do editoru jazyka (VBE). Klikněte na kartu Vložit > vyberte modul.

Krok 2: Definujte nový dílčí postup v rámci nově vloženého modulu, který pojme vaše makro.

Kód:

 Sub Příklad_1 () Konec Sub 

Krok 3: Rozhodněte se, kam chceme uložit výstup pro funkci COUNTA. Chci ji uložit do buňky A2 listu s názvem „ Příklad 1 “. Abychom to mohli udělat, musíme použít metodu Sheets.Range ve VBA. Viz následující obrázek pro vaši informaci:

Kód:

 Sub Příklad_1 () Listy („Příklad 1“). Rozsah („A2“) Konec Sub 

Tento kus kódu vybere buňku A2 jako oblast z listu s názvem Příklad 1.

Krok 4: Použijte operátor přiřazení, abychom mohli buňce, ke které bude přistupovat prostřednictvím výše uvedeného kódu, přiřadit hodnotu. Přidejte objekt s názvem WorksheetFunction, abychom pod ním měli přístup k funkci COUNTA.

Kód:

 Sub Příklad_1 () Listy ("Příklad 1"). Rozsah ("A2") = Pracovní listFunkční konec Sub 

Krok 5: Za určený objekt vložte tečku (.) A uvidíte pod ní seznam dostupných funkcí. Vyberte COUNTA ze seznamu více dostupných funkcí, které vám umožní spočítat neprázdné buňky nebo hodnoty.

Krok 6: Zadejte argumenty ručně pomocí funkce COUNTA. Argumenty jsou: „Rajnish“, „# N / A“, 1, „*“, True. Snažili jsme se přenést všechny typy dat jako argument této funkce.

Kód:

 Sub Příklad_1 () Listy ("Příklad 1"). Rozsah ("A2") = WorksheetFunction.CountA ("Rajnish", "# N / A", 1, "*", True) End Sub 

Krok 7: Spusťte tuto část kódu stisknutím klávesy F5 nebo Run a podívejte se na výstup pod buňkou A2 listu „ Příklad 1 “ v aktivním sešitu.

V tomto kódu chceme, aby systém spočítal vstupní argumenty a uložil počet do buňky A2 listu Příklad 1.

Příklad č. 2 - VBA COUNTA pro počítání neprázdných buněk v daném rozsahu

Předpokládejme, že mám všechna data ve sloupci A a musím spočítat, jaké jsou neprázdné řádky v celém sloupci. Protože se celý sloupec skládá z více než 10 Lacových řádků, je pro mne ideální časově náročné procházet a počítat každou neprázdnou buňku. Viz částečný snímek dat níže.

Postupujte podle následujících kroků:

Krok 1: Definujte nový dílčí postup, který pojme vaše makro.

Kód:

 Sub Příklad_2 () Konec Sub 

Krok 2: Definujte dvě nové proměnné v rámci tohoto dílčího postupu jako rozsah pomocí Dim . Jedna proměnná bude užitečná pro držení rozsahu sloupce argumentů vstupu a další proměnné budou užitečné při držení buňky, kde chceme, aby výstup byl počítané číslo.

Kód:

 Sub Example_2 () Dim rng_1 As Range Dim op_cell As Range End Sub 

Zde rng_1 uloží vstupní rozsah pro funkci COUNTA . Výstup COUNTA bude uložen pod proměnnou op_cell .

Krok 3: Nyní nastavte rozsah pro obě proměnné pomocí vlastnosti VBA Set. To je třeba provést, protože nemůžeme přímo přiřadit hodnotu proměnné definované jako objekt rozsahu.

Kód:

 Sub Example_2 () Dim rng_1 As Range Dim op_cell As Range Set rng_1 = Range ("A: A") Set op_cell = Range ("B1") End Sub 

Zde byla proměnná rng_1 nastavena na rozsah celého sloupce s názvem A. op_cell je nastaven na buňku B1, protože by to byla buňka, která obsahuje výstup COUNTA.

Krok 4: Nyní použijte obecný operátor přiřazení proti proměnné op_cell, abychom mohli uložit výstup pod buňku nastavenou na tuto proměnnou. To lze považovat za inicializaci výstupu.

Kód:

 Sub Example_2 () Dim rng_1 As Range Dim op_cell As Range Set rng_1 = Range ("A: A") Set op_cell = Range ("B1") op_cell = End Sub 

Krok 5: Použijte objekt WorksheetFunction na pravé straně operátora přiřazení (byl by to výraz, který bude vyhodnocen a hodnota bude uložena pod buňkou nastavenou na proměnnou op_cell) k inicializaci třídy, do které můžeme přistupovat, stejně jako použití Funkce COUNTA.

Kód:

 Sub Example_2 () Dim rng_1 As Range Dim op_cell As Set Range rng_1 = Range ("A: A") Set op_cell = Range ("B1") op_cell = WorksheetFunction End Sub Sub 

Krok 6: Jakmile stisknete tečku (.) Po objektu WorksheetFunction, získáte přístup ke všem funkcím dostupným v této třídě. Přejděte směrem k funkci COUNTA a vyberte ji dvojitým kliknutím.

Krok 7: Použijte proměnnou rng_1 jako argument vstupu v rámci COUNTA. Proto tato funkce v rámci třídy objektu funkce listu může spočítat neprázdné buňky přítomné v celém sloupci A.

Kód:

 Sub Example_2 () Dim rng_1 As Range Dim op_cell As Range Set rng_1 = Range ("A: A") Set op_cell = Range ("B1") op_cell = WorksheetFunction.CountA (rng_1) End Sub 

Krok 8: Spusťte tento kód stisknutím klávesy F5 nebo Run a výstup můžete vidět níže uvedeným způsobem v buňce B1 aktivního listu ze sešitu.

V buňce B1 vidíme číslo jako 17. To znamená, že máme 17 neprázdných buněk přítomných ve sloupci A tabulky. Možná nebudete vidět všech 17 prostřednictvím tohoto snímku obrazovky, protože je částečný. Raději byste mohli vidět list a procházet sloupcem A.

Co si pamatovat

  • Funkci VBA COUNTA můžete použít, když musíte spočítat počet neprázdných buněk přítomných v daném rozsahu.
  • COUNTA bere v úvahu všechny hodnoty, jako jsou čísla, řetězce, chybové hodnoty, booleovské hodnoty, prázdný text (“”). Nezohledňuje však buňku, která je prázdná.
  • Prázdné buňky nebudou počítány pomocí funkce COUNTA a budou ignorovány.
  • Ve funkci VBA COUNTA můžete argumenty používat ručně a stále to funguje.

Doporučené články

Toto je průvodce funkcí VBA COUNTA. Zde diskutujeme o tom, jak používat funkci COUNTA v Excelu VBA, spolu s praktickými příklady a šablonou Excel ke stažení. Můžete si také prohlédnout naše další doporučené články -

  1. Jak vytvořit objekt kolekce ve VBA?
  2. Jak spočítat postavy v Excelu?
  3. FileCopy ve VBA (příklady se šablonou Excel)
  4. Počet buněk s textem v Excelu Šablona Excel

Kategorie: