Aktualizácia obrazovky Excel VBA

Keď spustíme akékoľvek makro VBA s obrovskou sadou kódu, kód sa dokončí, ale na pozadí dostaneme spracovateľské údaje vo forme spustenia alebo čakania na ukazovateľ. Akonáhle bude hotový, uvidíme iba výstup. Bežným spôsobom nie je správny spôsob, ako zistiť, ako sa hodnoty aktualizujú spustením kódu. Povedzme napríklad, že sme kód napísali, aby sme vygenerovali niektoré čísla v 100 bunkách. Teraz by tento kód mohol jednoducho vygenerovať výstup bez toho, aby ukazoval, ako sa čísla tlačia. Aby sme to vyriešili, máme aktualizáciu obrazovky VBA . ScreenUpdating vo VBA nám pomáha vidieť, ako kód generuje výstup. Môže ísť o čísla, text, abecedy alebo kombináciu. Keď spustíme kódovú slučku, pomocou VBA ScreenUpdating by sme mohli vidieť generovanie čísel.

Ako používať aplikáciu ScreenUpdating v programe Excel VBA?

Naučíme sa, ako používať aplikáciu ScreenUpdating v programe Excel pomocou kódu VBA.

Túto šablónu VBA ScreenUpdating Excel si môžete stiahnuť tu - VBA ScreenUpdating Excel Excel

VBA ScreenUpdating si môžete všimnúť, keď spustíme kód alebo makro. Keď je kód spustený, uvidíme, ako sa naša obrazovka aktualizuje podľa hodnôt vygenerovaných napísaným kódom vo VBA. Namiesto toho, aby sme videli staršiu čakaciu značku, pomocou VBA ScreenUpdating vidíme, ako obrazovka aktualizuje hodnoty výstupu pomocou VBA ScreenUpdating. Teraz môžeme vidieť aj názov samotného článku, ktorý ho definuje, VBA ScreenUpdating .

Aktualizácia obrazovky VBA - príklad č. 1

V tomto príklade sa zobrazí jednoduchý kód na aktualizáciu obrazovky. Na to potrebujeme niektoré bunky s číslami, ako je uvedené nižšie. Postupujte podľa nasledujúcich krokov:

Krok 1: Otvorte modul na karte ponuky Vložiť, ako je to znázornené nižšie.

Krok 2: Teraz napíšte podprogram do názvu VBA ScreenUpdating, ako je to znázornené nižšie.

kód:

 Sub Screen_Update1 () End Sub 

Krok 3: Teraz skopírujeme čísla z bunky A1: A3 do všetkých ostatných buniek. Povedzme, že bunka bude C1: C3 pomocou nižšie uvedeného kódu.

kód:

 Sub Screen_Update1 () Rozsah ("A1"). Rozsah kopírovania ("C1") ("A2"). Rozsah kopírovania ("C2") ("A3"). Rozsah kopírovania ("C3") 

Krok 4: Teraz, keď spustíme tento kód, môžeme získať iba výstup, ktorý je skopírovaný z hodnôt stĺpcov A do C. Teraz použijeme aplikáciu ScreenUpdating, ako je to znázornené nižšie.

kód:

 Sub Screen_Update1 () Application.ScreenUpdating Range ("A1"). Rozsah kopírovania ("C1") ("A2"). Rozsah kopírovania ("C2") ("A3"). Rozsah kopírovania ("C3") Koniec náhradník 

Krok 5: Rovnaké znamienko vyberieme booleovské hodnoty, ktoré sú TRUE alebo FALSE. Na zastavenie aktualizácie obrazovky vyberieme FALSE.

kód:

 Sub Screen_Update1 () Application.ScreenUpdating = Falošný rozsah ("A1"). Rozsah kopírovania ("C1") ("A2"). Rozsah kopírovania ("C2") ("A3"). Rozsah kopírovania ("C3") ) Koniec pod 

Krok 6: Spustite kód stlačením klávesu F5 alebo kliknutím na tlačidlo Prehrať umiestnené pod pásmom ponuky. Uvidíme, že hodnoty sa skopírujú zo stĺpca A do C.

Bolo by to jasnejšie vidieť, ak máme obrovské množstvo čísel.

Aktualizácia obrazovky VBA - príklad č. 2

Uvidíme ďalší príklad pre ScreenUpdating. Tentoraz zvážme číslo od 1 do 20 z bunky A1 po A20, ako je uvedené nižšie.

Pri používaní aplikácie aktualizácie obrazovky postupujte podľa nasledujúcich krokov:

Krok 1: Napíšte podprogram postupu VBA Screenupdating, ako je to znázornené nižšie.

kód:

 Sub Screen_Update2 () End Sub 

Krok 2: Teraz napíšte kód, aby ste vybrali bunku rozsahu od A1 po A20 a skopírujte ich pri B1 až F20, ako je to znázornené nižšie. Podobným spôsobom, ako sme videli v príklade 1.

kód:

 Sub Screen_Update2 () Range ("A1: A20"). Range Copy ("B1: F20") End Sub 

Krok 3: Ak chcete použiť aplikáciu na aktualizáciu obrazovky, znova použijeme podobný riadok kódu, aký sme videli v príklade 1.

kód:

 Sub Screen_Update2 () Application.ScreenUpdating = Falošný rozsah ("A1: A20"). Rozsah kópií ("B1: F20") End Sub 

Vyššie použitá aplikácia ScreenUpdating ako FALSE nám umožní zistiť, ako kód VBA aktualizuje obrazovku. Pretože máme viac čísel, takže existuje šanca, že uvidíme aktualizáciu obrazovky.

Krok 4: Spustite kód stlačením klávesu F5 alebo kliknutím na tlačidlo Prehrať. Videli sme, že sa hodnota aktualizuje.

Aktualizácia obrazovky VBA - príklad č. 3

Existuje aj iný spôsob, ako sledovať aktualizáciu obrazovky. Toto by sa dalo dosiahnuť pomocou slučky For-Next Loop. V tomto príklade vytlačíme čísla v kombinovanej matici Riadok a Stĺpec. Postupujte podľa nasledujúcich krokov:

Krok 1: Napíšte podprogram VU ScreenUpdating.

kód:

 Sub Screen_Updating3 () End Sub 

Krok 2: Teraz deklarujte 2 premenné pre riadky a stĺpce osobitne ako typ údajov Long.

kód:

 Sub Screen_Updating3 () Dim RowCount ako Long Dim ColumnCount ako Long End Sub 

Krok 3: Teraz deklarujte ďalšiu premennú, ktorú použijeme ako referenciu na spustenie čísel.

kód:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long End Sub 

Krok 4: Teraz zadajte referenčné číslo, z ktorého pozície chceme začať s počítaním. Tu to dáme ako 0.

kód:

 Sub Screen_Updating3 () Dim RowCount ako Long Dim ColumnCount ako Long Dim MyNumber As Long MyNumber = 0 End Sub 

Krok 5: Teraz otvorte slučku For a zadajte počet stĺpcov a riadkov, ktoré chcete vidieť aktualizovať. Povedzme od 1 do 50.

kód:

 Sub Screen_Updating3 () Dim RowCount ako Long Dim ColumnCount ako Long Dim MyNumber As Long MyNumber = 0 Pre RowCount = 1 až 50 End Sub 

Krok 6: Na pokračovanie v cykle dajte MyNumber premennú +1.

kód:

 Sub Screen_Updating3 () Dim RowCount ako Long Dim ColumnCount ako Long Dim MyNumber As Long MyNumber = 0 Pre RowCount = 1 až 50 Pre ColumnCount = 1 až 50 MyNumber = MyNumber + 1 End Sub 

Krok 7: Teraz vyberte vo funkcii bunky premenné riadkov a stĺpcov. Potom vyberte hodnoty v nich uložené a priraďte ich premennej MyNumber.

kód:

 Sub Screen_Updating3 () Dim RowCount ako Long Dim ColumnCount ako Long Dim MyNumber As Long MyNumber = 0 Pre RowCount = 1 až 50 Pre ColumnCount = 1 až 50 MyNumber = MyNumber = 1 Cell (RowCount, ColumnCount) .Vyberte bunky (RowCount, ColumnCount). . Hodnota = MyNumber End Sub 

Krok 8: Teraz zatvorte slučku o ďalšie. Zahrňte premenné Riadok a Stĺpec, ktoré sme definovali a použili v slučke For-Next.

kód:

 Sub Screen_Updating3 () Dim RowCount ako Long Dim ColumnCount ako Long Dim MyNumber As Long MyNumber = 0 Pre RowCount = 1 až 50 Pre ColumnCount = 1 až 50 MyNumber = MyNumber = 1 Cell (RowCount, ColumnCount) .Vyberte bunky (RowCount, ColumnCount). .Value = MyNumber Next ColumnCount Next RowCount End Sub Sub 

Krok 9: Teraz sme ešte nevložili aplikáciu Screenupdating. Teraz vložte aplikáciu Screenupdating ako FALSE pred začiatkom cyklu a ako TRUE na konci cyklu, ako je to znázornené nižšie.

kód:

 Sub Screen_Updating3 () Dim RowCount ako dlhé Dim ColumnCount ako Long Dim MyNumber ako Long Application.ScreenUpdating = False MyNumber = 0 Pre RowCount = 1 až 50 Pre ColumnCount = 1 až 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount) .Vyberte bunky (RowCount, ColumnCount) .Value = MyNumber Next ColumnCount Next RowCount Application.ScreenUpdating = True End Sub 

Teraz zostavte celý kód krok za krokom stlačením funkčného klávesu F8 a potom ho spustite, ak sa nenájde žiadna chyba. Uvidíme, ako sa každá bunka vybraných riadkov a stĺpcov aktualizuje o hodnoty v nej uložené.

Výhody Excel VBA ScreenUpdating

  • Je celkom užitočné zistiť, ako sa obrazovka aktualizuje o hodnotu uloženú v slučke.
  • Ak chceme prepínať medzi pracovnými listami a zošitmi, môžeme použiť program Screenupdating.
  • Môžeme použiť ľubovoľný rozsah čísel.

Čo je potrebné pamätať

  • Ako rámček použijeme vložku For-Next loop alebo ako prvú, môžeme splniť podmienku For loop a potom ju zavrieť pomocou Next.
  • VBA ScreenUpdating je veľmi užitočná a viditeľná, ak používame veľké množstvo čísel.
  • Po dokončení uložte súbor programu Excel, pretože makro umožňuje formát Excel.
  • VBA ScreenUpdating sa dá tiež použiť na vytvorenie makra, prostredníctvom ktorého môžeme posielať e-maily.

Odporúčané články

Toto je príručka k aktualizácii obrazovky VBA. Tu diskutujeme o tom, ako používať aplikáciu ScreenUpdating v Excel VBA spolu s praktickými príkladmi a stiahnuteľnou šablónou Excel. Môžete si tiež prečítať naše ďalšie navrhované články -

  1. Zbierka VBA (príklady)
  2. Výkazy VBA IF | Šablóny programu Excel
  3. Ako používať funkciu zoradenia Excel VBA?
  4. VBA počas slučky (príklady so šablónou programu Excel)
  5. VBA Environ

Kategórie: