Excel VBA-skærmopdatering

Når vi kører en VBA-makro med et kæmpe sæt kode, afsluttes koden, men i baggrunden får vi behandlingsdata i form af at køre eller vente på markøren. Og når det er gjort, kan vi kun se output. Den almindelige måde er ikke den rigtige måde at se, hvordan værdierne opdateres ved at køre kode. Lad os for eksempel sige, at vi har skrevet koden for at generere nogle tal i 100 celler. Nu kan denne kode ganske enkelt generere output uden at vise, hvordan tallene bliver udskrevet. For at løse dette har vi VBA ScreenUpdating . ScreenUpdating i VBA hjælper os med at se, hvordan koden genererer output. Dette kan være tal, tekst, alfabeter eller kombination. Når vi kører kodeløkken, ved VBA ScreenUpdating kunne vi se de numre, der blev genereret.

Hvordan bruges ScreenUpdating-applikation i Excel VBA?

Vi lærer, hvordan du bruger ScreenUpdating-applikationen i Excel ved hjælp af VBA-koden.

Du kan downloade denne VBA ScreenUpdating Excel-skabelon her - VBA ScreenUpdating Excel Template

VBA ScreenUpdating kan bemærkes, mens vi kører koden eller makroen. Mens koden kører, vil vi være i stand til at se, hvordan vores skærm bliver opdateret med de værdier, der er genereret af skrevet kode i VBA. I stedet for at se det ældre ventetegn, kan vi ved hjælp af VBA ScreenUpdating se, hvordan skærmen opdaterer værdierne for output ved VBA ScreenUpdating. På det tidspunkt kan vi også se navnet på selve artiklen definerer den fungerer, VBA ScreenUpdating .

VBA ScreenUpdating - eksempel # 1

I dette eksempel ser vi en simpel kode til opdatering af skærmen. Til dette har vi brug for nogle celler med tal, som vist nedenfor. Følg nedenstående trin for dette:

Trin 1: Åbn et modul fra fanen Indsæt menu som vist nedenfor.

Trin 2: Skriv nu underproceduren i navnet på VBA ScreenUpdating som vist nedenfor.

Kode:

 Sub Screen_Update1 () End Sub 

Trin 3: Vi kopierer nu numrene fra celle A1: A3 til andre celler. Lad os sige, at cellen skal være C1: C3 ved hjælp af nedenstående kode.

Kode:

 Underskærm_Update1 () Range ("A1"). Copy Range ("C1") Range ("A2"). Copy Range ("C2") Range ("A3"). Copy Range ("C3") End Sub 

Trin 4: Hvis vi nu kører denne kode, kunne vi kun få det output, der er kopieret værdier fra kolonne A til C. Nu bruger vi ScreenUpdating-applikationen som vist nedenfor.

Kode:

 Underskærm_Update1 () Application.ScreenUpdating Range ("A1"). Copy Range ("C1") Range ("A2"). Copy Range ("C2") Range ("A3"). Copy Range ("C3") Ende Sub 

Trin 5: Vi sætter et lige tegn for at vælge de boolske værdier, der er SAND eller FALSE. Vi vælger FALSE for at stoppe screenupdateringen.

Kode:

 Underskærm_Update1 () Application.ScreenUpdating = False Range ("A1"). Copy Range ("C1") Range ("A2"). Copy Range ("C2") Range ("A3"). Copy Range ("C3" ) Afslut under 

Trin 6: Kør koden ved at trykke på F5-tasten eller ved at klikke på Play-knappen, der findes under menubåndet. Vi ser, at værdierne er kopieret fra kolonne A til C.

Dette kunne ses mere tydeligt, hvis vi har et enormt antal tal.

VBA ScreenUpdating - eksempel # 2

Lad os se et andet eksempel til ScreenUpdating. Lad os denne gang overveje antallet fra 1 til 20 fra celle A1 til A20 som vist nedenfor.

Følg nedenstående trin for anvendelse af screenupdating-applikation:

Trin 1: Skriv underproceduren for VBA Screenupdating som vist nedenfor.

Kode:

 Sub Screen_Update2 () End Sub 

Trin 2: Skriv nu koden for at vælge områdecellen fra A1 til A20 og kopier dem ved B1 til F20 som vist nedenfor. På lignende måde som vi så i eksempel-1.

Kode:

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

Trin 3: For at anvende screenupdating-applikationen bruger vi igen en lignende kodelinie, som vi har set i eksempel-1.

Kode:

 Sub Screen_Update2 () Application.ScreenUpdating = False Range ("A1: A20"). Copy Range ("B1: F20") End Sub 

Den ovenfor anvendte applikation ScreenUpdating som FALSE giver os mulighed for at se, hvordan VBA-koden opdaterer skærmen. Efterhånden som vi har flere numre, så er der chancer for, at vi kan se screenupdating.

Trin 4: Kør koden ved at trykke på F5-tasten eller ved at klikke på Play-knappen. Vi kunne se værdien blive opdateret.

VBA ScreenUpdating - eksempel # 3

Der er en anden måde at se skærmen blive opdateret på. Dette kunne gøres ved hjælp af For-Next Loop. I dette eksempel udskriver vi numrene i en kombinationsmatrix med række og kolonne. Følg nedenstående trin for dette:

Trin 1: Skriv underproceduren til VBA ScreenUpdating.

Kode:

 Sub Screen_Updating3 () End Sub 

Trin 2: Angiv nu de 2 variabler for række og kolonner separat som datatype Lang.

Kode:

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

Trin 3: Nu erklær en anden variabel, som vi vil bruge som reference til at starte tallene.

Kode:

 Underskærm_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long End Sub 

Trin 4: Giv nu referencenummeret, fra hvilken position vi vil starte tællingen. Her giver vi det som 0.

Kode:

 Underskærm_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 End Sub 

Trin 5: Åbn nu en For-loop og angiv antallet af kolonner og rækker, som vil se opdatering. Lad os sige fra 1 til 50.

Kode:

 Underskærm_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 For RowCount = 1 To 50 End Sub 

Trin 6: Giv MyNumber-variablen +1 for at fortsætte loopen.

Kode:

 Underskærm_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 For RowCount = 1 To 50 For ColumnCount = 1 To 50 MyNumber = MyNumber + 1 End Sub 

Trin 7: Vælg nu række og kolonne-variabler i cellefunktion. Og vælg derefter de værdier, der er gemt i dem, og tildel dem til variablen MyNumber.

Kode:

 Underskærm_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 For RowCount = 1 To 50 For ColumnCount = 1 To 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount) .Vælg celler (RowCount, ColumnCount) .Value = MyNumber End Sub 

Trin 8: Luk nu Loop by Next. Medtag række- og kolonnevariabler, som vi definerede og brugte i For-Next-loopen.

Kode:

 Underskærm_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 For RowCount = 1 To 50 For ColumnCount = 1 To 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount) .Vælg celler (RowCount, ColumnCount) .Value = MyNumber Næste kolonneTælling Næste RowCount End Sub 

Trin 9: Nu har vi ikke indsat Screenupdating-applikationen endnu. Indsæt nu Screenupdating-applikationen som FALSE inden loopens start og som SAND i slutningen af ​​loopen som vist nedenfor.

Kode:

 Underskærm_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long Application.ScreenUpdating = False MyNumber = 0 For RowCount = 1 To 50 For ColumnCount = 1 To 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount) .Vælg celler (RowCount, ColumnCount) .Value = MyNumber Next ColumnCount Next RowCount Application.ScreenUpdating = True End Sub 

Kompilér nu den komplette kode trin for trin ved at trykke på F8-funktionstasten og kør den derefter, hvis der ikke findes nogen fejl. Vi vil se, hvordan hver celle af valgte rækker og kolonner bliver opdateret med de værdier, der er gemt i den.

Fordele ved Excel VBA ScreenUpdating

  • Det er meget nyttigt at se, hvordan skærmen bliver opdateret med den værdi, der er gemt i løkken.
  • Vi kan bruge Screenupdating, hvis vi vil skifte mellem regneark og projektmapper.
  • Vi kan bruge et vilkårligt antal numre.

Ting at huske

  • Vi bruger indsættet For-næste sløjfe som ramme eller først, vi kan tilfredsstille betingelsen for For løkke og derefter lukke det ved Næste.
  • VBA ScreenUpdating er ganske nyttig og synlig, hvis vi bruger et enormt sæt tal.
  • Når det er gjort, skal du gemme excel-filen, da makro aktiverer Excel-format.
  • VBA ScreenUpdating kan også bruges til at oprette en makro, gennem hvilken vi kan sende e-mails.

Anbefalede artikler

Dette er en guide til VBA ScreenUpdating. Her diskuterer vi, hvordan du bruger ScreenUpdating-applikation i Excel VBA sammen med praktiske eksempler og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -

  1. VBA-samling (eksempler)
  2. VBA IF-erklæringer | Excel-skabeloner
  3. Sådan bruges Excel VBA sorteringsfunktion?
  4. VBA While Loop (eksempler med Excel-skabelon)
  5. VBA-miljø

Kategori: