Excel VBA pre každú slučku

Kľúčové slovo „Každé“ sa používa vo VBA spolu s funkciou „Pre“. Znamená to, že pre každú entitu v poli alebo rozsahu opakujte proces v cykle. V zásade nebudeme zadávať rozsah krokov, tj od 1 do 5 alebo 1 až 10, namiesto toho ho len dáme, ako je uvedené v syntaxi nižšie.

syntaxe:

Pre každý názov objektu v rozsahu

Poznámka: Na excelovom pracovnom hárku musíte mať kartu Vývojár.

Ak nevidíte kartu „Vývojár“ v Exceli, postupujte podľa nasledujúcich krokov.

Krok 1: Kliknite na možnosť súboru .

Krok 2: Zobrazí sa rozbaľovacia ponuka, kliknite na kartu Možnosti .

Krok 3: Po kliknutí na „Možnosti“ sa zobrazí dialógové okno, ako je uvedené nižšie a kliknite na možnosť Prispôsobiť pásku .

Krok 4: Keď pretiahneme nadol možnosti prispôsobenia pásky, nájdeme možnosť pre vývojára, musíme začiarknuť políčko, ktoré nám umožní používať VBA vo vynikajúcej kvalite.

Ako používať každú slučku vo VBA?

Nižšie sú uvedené rôzne príklady použitia každej slučky v programe Excel pomocou kódu VBA.

Túto šablónu VBA pre každú slučku Excel si môžete stiahnuť tu - VBA pre každú šablónu slučky Excel

Excel VBA pre každú slučku - Príklad č. 1

Urobíme jednoduchý príklad pre každú slučku vo VBA. Predpokladajme, že nižšie je množina údajov vo VBA.

Ak chcete použiť každú smyčku v programe Excel VBA, postupujte podľa nasledujúcich krokov.

Krok 1: Kliknite na kartu „Vývojár“ a potom kliknite na možnosť „Visual Basic“ na ľavej strane (prvá možnosť), ako je to znázornené nižšie.

Po kliknutí naň sa zobrazí nové okno, ako je uvedené nižšie.

Všimnite si, že obsahuje dve karty na ľavej strane, „List1 (List1)“ a „ThisWorkbook“. Jediný rozdiel je „List1“, keď chcete vykonať kód iba pre tento konkrétny list av „ThisWorkbook“ môžeme napísať kód a vykonať, ktorý sa dá použiť pre celý excel zošit.

Krok 2: Dvakrát kliknite na „List1 (Sheet1)“ a uvidíte prázdnu obrazovku, na ktorej musíme napísať kód. Pomenujte vytvorenú podmnožinu. Tu sme dali meno „Sub For_Each_Ex1 ()“, ako je to znázornené na nasledujúcom obrázku.

kód:

 Sub For_Each_Ex1 () End Sub 

Takto vytvoríme podmnožinu a automaticky sa zobrazí „End Sub“. Toto je štandardne funkcia Excel. Ak sa „End Sub“ neobjaví, kód sa nevykoná a vyvolá chybu.

Krok 3: Premenné deklarujeme ako rozsah.

kód:

 Sub For_Each_Ex1 () Dim Earn, Range1 As Range End Sub 

Tu sme deklarovali dve premenné, „Zarobiť“, ktoré použijeme pre každú z nich a „Rozsah1“ ako rozsah množiny údajov.

Krok 4: Teraz stanovíme rozsah údajov, tj rozsah údajov, na ktorých musíme pracovať, pomocou kľúčového slova „Set“, ako je uvedené nižšie.

kód:

 Sub For_Each_Ex1 () Dim Earn, Range1 As Range Set Range1 = Range ("A1: A10") End Sub 

Tu sme opravili „Range1“ od buniek rozsahu A1 až A10, čo je náš súbor údajov.

Krok 5: Teraz vykonáme pre cyklus pomocou každého kľúčového slova.

kód:

 Sub For_Each_Ex1 () Dim Earn, Range1 As Range Set Range1 = Range ("A1: A10") za každé zarobené v Range1 End Sub 

Tu pre každú hodnotu v rozsahu získa zárobok hodnotu priradenú ako Pre slučku sa vykoná krok za krokom.

Krok 6: Teraz použijeme kľúčové slovo „Msgbox“ na zobrazenie každého záznamu riadku v priradenom rozsahu.

kód:

 Sub For_Each_Ex1 () Dim Zarobiť, Rozsah1 Ako Rozsah Nastaviť Rozsah1 = Rozsah ("A1: A10") pre každé zarobené v rozsahu 1 MsgBox Zarobiť.Výpočet Koniec Sub 

Tu „Earn.value“ zobrazí hodnotu v bunke, tj počnúc prvou bunkou v rozsahu.

Krok 7: Teraz chceme vykonať ďalšiu hodnotu v danom rozsahu buniek, a preto musíme v kóde použiť kľúčové slovo „Ďalej“. Pomôže to pokračovať ďalej v rozsahu a zobraziť každú entitu v rozsahu buniek jeden po druhom.

kód:

 Sub For_Each_Ex1 () Dim Zarobiť, Rozsah1 Ako Rozsah Nastaviť Rozsah1 = Rozsah ("A1: A10") pre každé zarobiť v rozsahu1 MsgBox Zarobiť.Value Ďalší Zarobiť Koniec Sub 

Krok 8: Spustite kód stlačením klávesy F5 alebo Run a pozrite si výstup.

V okamihu, keď sa vykoná riadok kódu „Ďalší zárobok“, sa hodnote „Zisk.hodnota“ priradí ďalšia hodnota bunky v rozsahu. Jeden po druhom kliknite na „OK“ a bude sa naďalej zobrazovať každá hodnota v rozsahu, až kým sa rozsah hodnôt nedokončí.

Excel VBA pre každú slučku - Príklad č. 2

Urobíme ďalší príklad, v ktorom zobrazíme názov každého hárku v excelovom súbore. Predpokladajme, že máme listy v excelovskom súbore:

Keď si všimneme, že v excelovom súbore je okolo 5 hárkov, musíme názov každého z nich zobraziť jeden po druhom.

Kód napíšeme a spustíme v časti „ThisWorkbook“, ako je to zvýraznené v červenom poli nižšie:

Dvakrát kliknite na ňu, kým sa objaví tabla okna a začnite do nej zapisovať kód. Ak chcete použiť každú slučku v programe Excel VBA, postupujte takto:

Krok 1: Kód napíšeme priradením názvu podskupiny, ako je uvedené nižšie.

kód:

 Názov podskupiny () End Sub 

Krok 2: Môžeme tiež priamo začať písať príkaz slučky „For“ bez toho, aby sme deklarovali premennú, ako je uvedené nižšie.

kód:

 Sub pagename () Pre každý sht v Application.Sheets End Sub 

„Sht“ je naša premenná1, ktorá sa predvolene deklaruje a „Application.sheets“ znamená, že v súbore sa berú do úvahy všetky hárky. Application.fucntion určuje, že môžeme pridať ľubovoľnú funkciu alebo funkciu alebo vynikajúci nástroj, ktorý treba brať do úvahy pri vykonávaní kódu.

Krok 3: Teraz zadáme syntax schránky a spolu s ňou pridáme syntax k zobrazenému názvu listu, ako je to zobrazené nižšie:

kód:

 Sub pagename () Pre každý sht v Application.Sheets MsgBox "Názov listu je:" & sht.Name End Sub 

Tu je príkaz, ktorý by sme chceli zobraziť, „Názov hárku je:“ a potom zadáme ampersand (&), ktorý zreťazuje riadok kódu a potom napíšeme „sht.Name“, tj vyberie hárok od prvého hárok a zobraziť meno.

Krok 4: Teraz musíme zopakovať postup zobrazovania každého názvu hárka. Preto by sme použili „Next sht“, ako je uvedené nižšie:

kód:

 Sub pagename () Pre každý sht v Application.Sheets MsgBox "Názov listu je:" & sht.Name Next sht End Sub Sub 

„Next sht“ to oznámi systému, zváži nasledujúci list a zobrazí jeho názov pre ďalšie vykonanie.

Krok 6: Spustite kód stlačením klávesy F5 alebo Run a pozrite si výstup.

Po kliknutí na „OK“ sa kód spustí ďalej a zobrazí sa názov nasledujúceho hárku. Kód sa spustí, až kým nebudú zobrazené ďalšie hárky.

Excel VBA pre každú slučku - Príklad č. 3

Teraz si ukážeme príklad, kde musíme spočítať všetky hodnoty v danom súbore údajov alebo poli. Predpokladajme, že súbor údajov je uvedený nižšie:

Ak chcete použiť každú slučku v programe Excel VBA, postupujte takto:

Krok 1: Najskôr deklarujte názov podmnožiny ako „everyadd ()“, ako je uvedené nižšie.

kód:

 Sub everyadd () End Sub 

Krok 2: Teraz deklarujeme potrebné premenné, jednu ako celé číslo s názvom „celkom“, v ktorom budeme postupne zhŕňať hodnoty buniek a opravovať rozsah buniek, ktoré obsahujú hodnoty, ktoré musíme pridať.

kód:

 Sub everyadd () Dim total As Integer Dim Range1 As End End Sub 

Krok 3: Po deklarovaní premennej a rozsahu musíme opraviť rozsah, ktorý sa použije pre slučku. Tento rozsah od buniek A1 do A10 opravíme pomocou kľúčového slova „Set“, ako je uvedené nižšie:

kód:

 Sub everyadd () Dim total As Integer Dim Range1 As Range Range Range1 = Range ("A1: A10") End Sub 

Krok 4: Teraz môžeme priamo začať používať funkciu slučky For a priamo deklarovať premennú. Tu ako premennú používame „add1“ a systém ju predvolene deklaruje.

kód:

 Sub everyadd () Dim total As Integer Dim Range1 As Range Range Range1 = Range ("A1: A10") pre každý add1 In Range1 End Sub 

Krok 5: Sčítanie každej entity v rozsahu jeden po druhom a do premennej deklarovanej ako „celkom“. Štandardne je hodnota „celkom“ spočiatku nula. A musíme pridať jednu po druhej hodnotu buniek a táto suma sa musí znova pridať do súčtu „celkom“.

kód:

 Sub everyadd () Dim total As Integer Dim Range1 As Range Range Range1 = Range ("A1: A10") Pre každý add1 In Range1 celkom = celkom + add1.Value End Sub Sub 

Vyššie uvedený príkaz sa vykonáva sprava doľava, tj „add1.value“ je prvá hodnota bunky a pripočítava sa k „total“, čo je nula. Suma by teda bola 0 + 1, čo je 1. A táto suma ako 1 by bola v súčte „celkom“ pred znamienkom „=“. Toto je výhoda, pretože vzorec sa vykonáva zľava doprava.

Krok 6: Teraz pridajte „Next add1“, ktorý teraz pomôže zvážiť ďalšiu hodnotu bunky v rozsahu údajov a túto hodnotu pridať do premennej „total“, ako je uvedené nižšie.

kód:

 Sub everyadd () Dim total As Integer Dim Range1 As Range Range Range1 = Range ("A1: A10") Pre každý add1 In Range1 celkom = celkom + add1.Value Next add1 End Sub 

Krok 6: Stlačením klávesu „F8“ spustíte kód na každom riadku. Na obrázku nižšie vidíme aj hodnotu „celkom“.

Podobne, kým sa rozsah buniek nedostane, slučka bude naďalej vykonávať túto sumu poľa.

Krok 7: Teraz použijeme kľúčové slovo „Msgbox“.

kód:

 Sub everyadd () Dim total As Integer Dim Range1 As Range Range Range1 = Range ("A1: A10") Pre každý add1 In Range1 celkom = celkom + add1.Value Next add1 MsgBox "Final Summation:" & total End Sub Sub 

Krok 8: Spustite kód stlačením klávesy F5 alebo Run a pozrite si výstup.

Čo je potrebné pamätať

  • Kľúčové slovo „každé“ sa používa väčšinou iba v prípade použitia funkcie VBA pre slučku. Inak má obmedzené použitie vo vynikajúcich VBA.
  • Výhodou kľúčového slova „Každé“ je to, že vo vyhlásení „For“ nemáme kroky ako 1 až x .

Odporúčané články

Toto je sprievodca VBA pre každú slučku. Tu diskutujeme o tom, ako používať každú smyčku v programe Excel pomocou kódu VBA spolu s praktickými príkladmi a šablónou programu Excel na stiahnutie. Nižšie uvádzame niekoľko užitočných vynikajúcich článkov týkajúcich sa VBA -

  1. VBA urobiť, zatiaľ čo slučka
  2. Prepínanie stĺpcov v Exceli
  3. VBA Break for Loop
  4. Počet mien v Exceli
  5. Ako spustiť kód VBA?

Kategórie: