Počítadlo v Excelu VBA

V MS Excel existují různé způsoby počítání. Můžeme použít vestavěné funkce jako Count, CountIf, CountA, CountBlank, které jsou v Excelu. Ale tyto funkce nebudou ve VBA fungovat správně a mají také omezení. Abychom to překonali, máme mnoho funkcí a příkazů a proces, pomocí kterého můžeme provádět VBA Counter. VBA Counter se používá pro počítání buněk, počítání obsahu buněk a také se používá jako časovač odpočítávání, kdy můžeme implementovat časový rozvrh k měření libovolného úkolu.

S pomocí VBA Counter můžeme také počítat buňky s jejich barevnými indexy. Tento index barev umí také barvu písma nebo barvu pozadí buňky a tučné hodnoty.

Jak vytvořit čítač v Excelu VBA?

Níže jsou uvedeny různé příklady vytvoření čítače v Excelu pomocí kódu VBA.

Tuto VBA Counter Excel šablonu si můžete stáhnout zde - VBA Counter Excel Template

Počítadlo VBA - Příklad č. 1

Ve sloupci A máme nějaké údaje o náhodných číslech. Všechny uvedené hodnoty jsou náhodné a nemají žádné spojení, například v sekvenci nebo řadě. Nyní pomocí procesu počítadla VBA spočítáme nejvyšší a nejnižší hodnoty hodnot a získáme výstup v buňce D2 a D3.

Počet spočítáme a současně je obarvíme podle barevného textu v buňce C2 a C3.

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

Krok 1: Vytvořte příkazové tlačítko, které je k dispozici na kartě Vývojář v nabídce Vložit ovládací prvek Active X, jak je ukázáno níže.

Krok 2: Nyní vytvořte tlačítko, jak je ukázáno níže.

Krok 3: Klikněte pravým tlačítkem na vytvořené tlačítko a přejděte na možnost Vlastnosti .

Krok 4: Změňte titulek tlačítka, které je výchozí jako CommandButton2, na libovolné požadované jméno. Zde jsme to změnili na „ Počítání buněk podle hodnoty “.

Krok 5: Po dokončení klepněte pravým tlačítkem myši na vytvořené tlačítko a vyberte možnost Zobrazit kód, čímž se zobrazí okno VBA.

Editor jazyka je nyní otevřen a ve výchozím nastavení je pro příkazové tlačítko již vytvořen podprogram.

Kód:

 Private Sub CommandButton2_Click () End Sub 

Krok 6: Nyní musíme deklarovat 3 proměnné. Deklarujte první proměnnou, do které uložíme čísla a druhou proměnnou, pomocí které použijeme počítadlo jako celá čísla, jak je ukázáno níže. A třetí proměnná bude tak dlouhá, aby se počítala čísla uložená v každém řádku.

Kód:

 Private Sub CommandButton2_Click () Dim A Integer Dim Dim Count Integer Dim LRow As Long End Sub 

Krok 7: Nyní vybereme první buňku listu, která je A1 jako náš rozsah. Odtud budeme vybírat buňky, dokud nebude mít čísla.

Kód:

 Private Sub CommandButton2_Click () Dim A jako integer Dim Count As Integer Dim LRow As Long LRow = Range ("A1"). CurrentRegion.End (xlDown) .Row End Sub Sub 

Krok 8: Nyní otevřeme a zapíšeme podmínku pro smyčku pro, pokud má buňka hodnotu větší než 10, pak se barva písma buňky změní na žlutou a pro hodnotu menší než 10 se barva písma buňky změní na Modrá s barevnými indexy 44, respektive 55 .

Kód:

 Private Sub CommandButton2_Click () Dim A jako Integer Dim Počet jako Integer Dim LRow As Long LRow = Range ("A1"). CurrentRegion.End (xlDown) .Row Pro A = 1 To LRow If Cells (A, 1) .Value> 10 Potom počet = počet + 1 buňky (A, 1) .ont.ColorIndex = 44 dalších buněk (A, 1) .ont.ColorIndex = 55 End Pokud Next A End Sub 

Krok 9: Nyní, abychom viděli výstup hodnot z buňky A1 do konce, vybereme buňky, jak je diskutováno výše v níže uvedeném kódu.

Kód:

 Private Sub CommandButton2_Click () Dim A jako Integer Dim Počet jako Integer Dim LRow As Long LRow = Range ("A1"). CurrentRegion.End (xlDown) .Row Pro A = 1 To LRow If Cells (A, 1) .Value> 10 Potom počet = počet + 1 buňky (A, 1) .Polo.ColorIndex = 44 dalších buněk (A, 1) .Polo.ColorIndex = 55 End If Next buňky A (2, 4). Hodnota = počet buněk (3, 4) .Hodnota = 12 - Count End Sub 

Krok 10: Nyní spusťte kód stisknutím tlačítka.

Uvidíme, buňky obsahující čísla menší než 10 jsou zvýrazněny modrou barvou. A ten větší než 10 je zvýrazněn žlutě.

Počítadlo VBA - Příklad č. 2

V tomto příkladu použijeme VBA Counter k měření času, do kterého můžeme změřit dobu, kterou děláme. Předpokládejme, že pokud potřebujeme změřit čas potřebný k dokončení jakéhokoli úkolu, pak je nejlepší implementovat proces, který zde uvidíme.

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

Krok 1: Vytvořte 2 karty libovolného tvaru z nabídky Vložit Možnosti obrazců, jak je ukázáno níže. Vybíráme obdélník: zaoblené rohy .

Krok 2: Vytvořte 2 tlačítka a pojmenujte je jako Start a Reset, čímž spustíme časovač a vynulujeme čas.

Krok 3: Nyní přejděte na VBA a otevřete modul z nabídky Vložit.

Krok 4: V tom zapište podkategorii Start časovače, jak je ukázáno níže.

Kód:

 Sub Start () End Sub 

Krok 5: Zvažte slovo pro další řádek, jako je NextRow, kde vybereme list, do kterého chceme implementovat kód. Zde je náš list List2 . A zde spočítáme Řádky z buňky +1, což je buňka A2, dokud nebudeme mít hodnotu kurzoru.

Kód:

 Sub Start () NextRow = ThisWorkbook.Sheets ("Sheet2"). Buňky (Rows.Count, 1) .End (xlUp) .Row + 1 End Sub 

Krok 6: Nyní se dostaneme do dalšího řádku, použijeme vertexový formát, kde 1 v závorce je pro osu Y.

Kód:

 Sub Start () NextRow = ThisWorkbook.Sheets ("Sheet2"). Buňky (Rows.Count, 1) .End (xlUp) .Row + 1 Cells (NextRow, 1) = Time End Sub 

Krok 7: Napište kód pro reset pod stejný počáteční kód.

Kód:

 Sub Reset () End Sub 

Krok 8: Nyní pro reset zachováme stejný kód jako Start, ale klíčové slovo se změní na LastRow a odebereme +1, takže se nemusíme dostat do jiného řádku.

Kód:

 Sub Reset () lastrow = ThisWorkbook.Sheets ("Sheet2"). Buňky (Rows.Count, 1) .End (xlUp) .Row End Sub Sub 

Krok 9: Nyní pro vymazání dat ve sloupci A poslední buňky k první buňce nejprve vyberte rozsah buněk s funkcí ClearContents .

Kód:

 Sub Reset () lastrow = ThisWorkbook.Sheets ("Sheet2"). Buňky (Rows.Count, 1) .End (xlUp) .Row Range ("A2: A" & lastrow) .ClearContents End Sub Sub 

Nyní zavřete okno VBA.

Krok 10: Klepněte pravým tlačítkem myši na kartu Start a vyberte možnost Přiřadit makro .

Krok 11: Vyberte podprogram Start, který jsme provedli výše.

Krok 12: Totéž proveďte pro tlačítko Reset. Přiřaďte resetovací subkód tlačítku Reset a klikněte na OK a ukončete návrhový režim pro provedení kódu.

Krok 13: Nyní klikněte nejprve na tlačítko Start . Čas zahájení dostaneme jako 3:51:33.

Krok 14: Nyní znovu klikněte 2-3 krát na tlačítko Start, abyste získali více časových odstupů. Uvidíme, že v každé iteraci je několik sekund.

Krok 15: Nyní budeme testovat tlačítko Reset . Klikněte na Reset. Uvidíme, že data jsou nyní vymazána a připravena na další kolečka počítání času.

Výhody aplikace Excel VBA Counter

  • Je velmi snadné implementovat počítadlo časových cyklů, jak jsme viděli v příkladu 2.
  • VBA Counter má mnoho typů implementace, není to omezeno pouze na příklady, které jsme viděli.

Co si pamatovat

  • Je vždy lepší přiřadit kód k jakémukoli tlačítku, když jsme provedli 2 nebo více typů kódu v jednom procesu.
  • Jakmile je přiřazení a spuštění kódu provedeno na kartě Vývojář, ukončete návrhový režim.
  • Můžeme také vytvořit čítač živého času, kde můžeme vidět odpočítávání času nebo sledovat skutečný čas.
  • Uložte makro do makra, aby bylo možné excelovat formát souboru, abychom neztratili náš kód.

Doporučené články

Toto je průvodce počitadlem VBA. Zde diskutujeme o tom, jak vytvořit VBA Counter v Excelu pomocí kódu VBA spolu s praktickými příklady a stahovatelnou šablonou Excel. Další informace naleznete také v následujícím článku -

  1. Použití chyby přetečení VBA v Excelu
  2. Příklady chyby VBA 1004
  3. Jak používat VBA DoEvents?
  4. Metody skrytí sloupců ve VBA

Kategorie: