VBA pre každú bunku v rozsahu v programe Excel (3 metódy)

  • Zdieľajte To
Hugh West

Vo veľkých databázach trávite väčšinu času prácou s rozsahmi a bunkami. Niekedy musíte opakovať tú istú činnosť vo veľkých rozsahoch alebo vo veľkom počte buniek. To zároveň zabíja váš čas a znižuje efektivitu. Inteligentným riešením tohto problému je vytvorenie Kód programovania VBA ktorý prejde každú bunku v rozsahu a vykoná rovnakú akciu, ktorú ste nariadili. Dnes v tomto článku budeme diskutovať o tom, ako urobiť VBA pre každú bunku v rozsahu v programe Excel.

Stiahnite si cvičebnicu

Stiahnite si túto cvičebnicu a precvičte si úlohu počas čítania tohto článku.

Kód VBA pre každú bunku v rozsahu v programe Excel.xlsx

3 vhodné spôsoby použitia VBA pre každú bunku v rozsahu v programe Excel

Pomocou kódu VBA môžete vykonať rovnaký vzorec pre každú bunku v rozsahu alebo stĺpci či riadku. V tejto časti si prejdeme všetky časti.

1. Aplikovať VBA pre každú bunku v rozsahu

Uvažujte o situácii, keď musíte použiť rovnaký kód VBA pre každú bunku v danom rozsahu ( B3:F12 ). Na tento účel vytvoríme kód VBA. Pokyny sú uvedené nižšie

Krok 1:

  • Najskôr vložíme príkazové tlačidlo, aby sme si zjednodušili prácu. Prejdite do svojho Karta Vývojár , vyberte Vložte a kliknite na príkazové tlačidlo, aby ste ho získali.

  • Máme naše príkazové tlačidlo.

  • Kliknutím pravým tlačidlom myši na príkazové tlačidlo otvorte možnosti. Vyberte a kliknite na Vlastnosti upraviť niektoré možnosti.

  • Zmeňte nadpis príkazového tlačidla. Tu zmeníme názov na " Kliknite tu ".

Krok 2:

  • Teraz dvakrát kliknite na príkazové tlačidlo, aby ste otvorili VBA Modul . Tu zapíšeme náš kód VBA pre túto úlohu.

  • Najprv deklarujeme dve premenné. Objekty s rozsahom nazveme CL a Rng Môžete ich pomenovať podľa vlastného uváženia.
 Dim CL As Range Dim Rng As Range 

  • Priradenie konkrétneho rozsahu pomocou tohto príkazu,

Set Rng = Worksheets("VBA1").Range("B3:F12")

  • Tu VBA1 je názov nášho pracovného hárka a B3:F12 je náš definovaný rozsah.

  • Teraz použijeme kód na vykonanie jednotlivých buniek v rozsahu. Kód je,
 Pre každý CL v Rng CL.Value = 100 Nasledujúci CL 
  • Hodnota = 100 odkazuje na to, že sa vráti 100 pre každú bunku v danom rozsahu.

  • Náš konečný kód teda bude,
 Private Sub CommandButton1_Click () Dim CL As Range Dim Rng As Range Set Rng = Worksheets("VBA1").Range("B3:F12") For Each CL In Rng CL.Value = 100 Next CL End Sub 
  • Prejdite na hlavný pracovný hárok a kliknite na príkazové tlačidlo, aby ste spustili VBA pre každú bunku v rozsahu.

Krok 3:

  • Podobne ako pri číselných hodnotách, aj textové hodnoty môžeme vložiť pre každú bunku v rozsahu. V takom prípade prejdite do okna VBA a namiesto hodnoty 100 vložte textovú hodnotu, ktorú chcete prechádzať. Zmenený riadok je
 CL.Value = "ExcelWIKI" 

  • Kliknite na tlačidlo príkazu a kód VBA vráti túto textovú hodnotu pre každú bunku v rozsahu.

Krok 4:

  • V tomto kroku pôjdeme trochu hlbšie. Povedzme, že chceme zvýrazniť každú prázdnu bunku v našom rozsahu.

  • Na tento účel pridajte do existujúceho kódu novú podmienku. Nový vzorec je,
 If CL.Value = " " Then CL.Interior.ColorIndex = 3 End If 
  • Tento nový kód zvýrazní prázdnu bunku červenou farbou. Úplný kód teda znie,
 Private Sub CommandButton1_Click () Dim CL As Range Dim Rng As Range Set Rng = Worksheets("VBA1").Range("B3:F12") For Each CL In Rng If CL.Value = " " Then CL.Interior.ColorIndex = 3 End If Next CL End Sub 

  • Výsledok získate kliknutím na tlačidlo príkazu.

Podobné čítanie:

  • Ako používať objekt rozsahu VBA v programe Excel (5 vlastností)
  • Použitie posunu rozsahu VBA (11 spôsobov)
  • Ako počítať text v programe Excel (7 jednoduchých trikov)

2. Vloženie kódu VBA pre každú bunku v stĺpci rozsahu

Kód VBA môžeme spustiť aj pre každú bunku v stĺpci. Predpokladajme, že máme stĺpec obsahujúci čísla a musíme vyfarbiť hodnoty, ktoré sú nižšie ako 10. Vytvoríme kód VBA, ktorý spustíme pre každú bunku v stĺpci.

Krok 1:

  • Vytvorte príkazové tlačidlo podľa pokynov, ktoré sme prebrali.

Krok 2:

  • Dvojitým kliknutím na príkazové tlačidlo otvorte okno VBA.
  • Deklarujeme premennú s názvom " c " typu long. Tu používame premennú typu Long, pretože premenné Long majú väčšiu kapacitu ako premenné Integer.
 Dim c As Long 

  • Potom pridajte riadok kódu, ktorý zmení farbu písma všetkých buniek v našom stĺpci na čiernu.
 Columns(1).Font.Color = vbBlack 

  • Vložte slučku pre tento kód.
 For c = 1 To Rows.Count Next c 

  • V tomto kroku zadáme podmienku, aby sa vyfarbili hodnoty, ktoré sú nižšie ako hodnota bunky C4 (10). Na tento účel zadajte tento kód.
 If Cells(c, 1).Value <Range("C4").Value And Not IsEmpty(Cells(c, 1).Value) Then Cells(c, 1).Font.Color = vbRed End If 

  • Konečný kód teda znie,
 Private Sub CommandButton1_Click () Dim c As Long Columns(1).Font.Color = vbBlack For c = 1 To Rows.Count If Cells(c, 1).Value <Range("C4").Value And Not IsEmpty(Cells(c, 1).Value) Then Cells(c, 1).Font.Color = vbRed End If Next c End Sub 
  • Program VBA sa spustí a zobrazí výsledky po kliknutí na tlačidlo príkazu.

3. Napíšte kód VBA pre každú bunku v riadku rozsahu

Kód VBA môžeme spustiť aj pre každú bunku v riadku. V danom riadku potrebujeme vykonať rovnakú akciu na každej bunke riadku.

Krok 1:

  • Pridajte príkazové tlačidlo a zmeňte jeho názov na " Kliknite sem! "

  • Dvojitým kliknutím na tlačidlo otvorte okno VBA. Zapíšte nižšie uvedený kód VBA.
 Private Sub CommandButton1_Click () Dim r As Range Dim MyString As String 'Pre každú bunku v riadku a použite žltú farebnú výplň For Each r In Range("B3:F3").Rows r.Interior.ColorIndex = 6 Next End Sub 
  • Kód prejde každú bunku riadku a na každú bunku použije žltú farebnú výplň.

  • Kliknite na tlačidlo a náš výsledok je tu.

Rýchle poznámky

👉 Ak nemáte viditeľnú kartu vývojára, môžete ju aktivovať pomocou tohto návodu.

Prispôsobený panel nástrojov rýchleho prístupu → Ďalšie príkazy → Prispôsobiť panel → Vývojár → OK

Záver

Prešli sme tri rôzne prístupy k spusteniu VBA pre každú bunku v rozsahu. Ak máte nejaké otázky alebo dotazy, môžete sa k nim vyjadriť. Môžete si pozrieť aj naše ďalšie články týkajúce sa úloh Excelu!

Hugh West je veľmi skúsený tréner a analytik Excelu s viac ako 10-ročnými skúsenosťami v tomto odvetví. Má bakalársky titul v odbore účtovníctvo a financie a magisterský titul v odbore Business Administration. Hugh má vášeň pre vyučovanie a vyvinul jedinečný vyučovací prístup, ktorý sa dá ľahko sledovať a pochopiť. Jeho odborné znalosti Excelu pomohli tisíckam študentov a profesionálov na celom svete zlepšiť svoje zručnosti a vyniknúť vo svojej kariére. Hugh sa prostredníctvom svojho blogu delí o svoje znalosti so svetom a ponúka bezplatné výukové programy Excelu a online školenia, ktoré jednotlivcom a firmám pomôžu naplno využiť ich potenciál.