Excel VBA ScreenUpdating

Når vi kjører hvilken som helst VBA-makro med et stort sett med kode, fullfører koden, men i bakgrunnen får vi behandlingsdata i form av å kjøre eller vente på pekeren. Og når det er gjort, kan vi bare se resultatet. Den vanlige måten er ikke den riktige måten å se hvordan verdiene oppdateres ved å kjøre kode. La oss for eksempel si at vi har skrevet koden for å generere noen tall i 100 celler. Nå kan den koden ganske enkelt generere output uten å vise hvordan tallene blir skrevet ut. For å løse dette, har vi VBA ScreenUpdating . ScreenUpdating i VBA hjelper oss med å se hvordan koden genererer output. Dette kan være tall, tekst, alfabeter eller kombinasjoner. Når vi kjører kodeløkken, ved VBA ScreenUpdating kunne vi se tallene som ble generert.

Hvordan bruke ScreenUpdating-applikasjonen i Excel VBA?

Vi lærer hvordan du bruker ScreenUpdating-applikasjonen i Excel ved å bruke VBA-koden.

Du kan laste ned denne VBA ScreenUpdating Excel Template her - VBA ScreenUpdating Excel Template

VBA ScreenUpdating kan legges merke til mens vi kjører koden eller makroen. Mens koden kjører, vil vi kunne se hvordan skjermen vår blir oppdatert av verdiene generert av skrevet kode i VBA. I stedet for å se det eldre ventetegnet, kan vi ved hjelp av VBA ScreenUpdating se hvordan skjermen oppdaterer verdiene for output ved VBA ScreenUpdating. Nå kan vi også se at selve artikkelen definerer at den fungerer, VBA ScreenUpdating .

VBA ScreenUpdating - Eksempel # 1

I dette eksemplet vil vi se en enkel kode for oppdatering av skjermen. For dette trenger vi noen celler med tall, som vist nedenfor. Følg trinnene nedenfor for å gjøre dette:

Trinn 1: Åpne en modul fra Sett inn menyfanen som vist nedenfor.

Trinn 2: Skriv nå delprosessen i navnet til VBA ScreenUpdating som vist nedenfor.

Kode:

 Sub Screen_Update1 () Slutt Sub 

Trinn 3: Vi vil nå kopiere tallene fra celle A1: A3 til andre celler. La oss si at cellen skal være C1: C3 ved hjelp av koden nedenfor.

Kode:

 Sub Screen_Update1 () Range ("A1"). Copy Range ("C1") Range ("A2"). Copy Range ("C2") Range ("A3"). Copy Range ("C3") End Sub 

Trinn 4: Nå hvis vi kjører denne koden, kunne vi bare få utdataene som er kopierte verdier fra kolonne A til C. Nå vil vi bruke ScreenUpdating-applikasjonen som vist nedenfor.

Kode:

 Underskjerm_Update1 () Application.ScreenUpdating Range ("A1"). Copy Range ("C1") Range ("A2"). Copy Range ("C2") Range ("A3"). Copy Range ("C3") End Under 

Trinn 5: Vi setter et like tegn for å velge de boolske verdiene som er SANN eller FALSE. Vi vil velge FALSE for å stoppe skjermbildet.

Kode:

 Sub Screen_Update1 () Application.ScreenUpdating = False Range ("A1"). Copy Range ("C1") Range ("A2"). Copy Range ("C2") Range ("A3"). Copy Range ("C3" ) Slutt sub 

Trinn 6: Kjør koden ved å trykke på F5-tasten eller ved å klikke på Play-knappen under menylinjen. Vi vil se verdiene kopieres fra kolonne A til C.

Dette kan sees tydeligere hvis vi har et enormt sett med tall.

VBA ScreenUpdating - Eksempel # 2

La oss se et annet eksempel for ScreenUpdating. Denne gangen la oss vurdere tallet 1 til 20 fra celle A1 til A20 som vist nedenfor.

Følg trinnene nedenfor for å bruke screenupdating-applikasjon:

Trinn 1: Skriv delprosessen til VBA Screenupdating som vist nedenfor.

Kode:

 Sub Screen_Update2 () Slutt Sub 

Trinn 2: Skriv nå koden for å velge avstandscelle fra A1 til A20 og kopier dem ved B1 til F20 som vist nedenfor. På lignende måte som vi så i eksempel-1.

Kode:

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

Trinn 3: For å bruke screenupdating-applikasjonen, vil vi igjen bruke en lignende kodelinje som vi har sett i eksempel-1.

Kode:

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

Ovennevnte applikasjon ScreenUpdating som FALSE vil tillate oss å se hvordan VBA-koden oppdaterer skjermen. Ettersom vi har flere tall, så er det sjanser for at vi kan se screenupdating.

Trinn 4: Kjør koden ved å trykke på F5-tasten eller ved å klikke på Play-knappen. Vi kunne se verdien bli oppdatert.

VBA ScreenUpdating - eksempel # 3

Det er en annen måte å se skjermen bli oppdatert. Dette kan gjøres ved hjelp av For-Next Loop. I dette eksemplet vil vi skrive ut tallene i en kombinasjonsmatrise for rad og kolonne. Følg trinnene nedenfor for å gjøre dette:

Trinn 1: Skriv delprosessen til VBA ScreenUpdating.

Kode:

 Sub Screen_Updating3 () Slutt Sub 

Trinn 2: Nå deklarerer de to variablene for rad og kolonner separat som datatype Lang.

Kode:

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

Trinn 3: Nå erklær en annen variabel som vi vil bruke som referanse for å starte tallene.

Kode:

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

Trinn 4: Gi nå referansenummeret fra hvilken posisjon vi ønsker å starte tellingen. Her gir vi det som 0.

Kode:

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

Trinn 5: Åpne nå en For-loop, og tell antall kolonner og rader som vil se oppdatering. La oss si fra 1 til 50.

Kode:

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

Trinn 6: For å fortsette loopen, gi MyNumber-variabelen +1.

Kode:

 Underskjerm_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 

Trinn 7: Velg nå rad- og kolonnevariablene i cellefunksjonen. Og velg deretter verdiene som er lagret i dem, og tilordn dem til MyNumber-variabelen.

Kode:

 Underskjerm_Updating3 () Dim RowCount As Long Dim ColumnCount As Long .Value = MyNumber End Sub 

Trinn 8: Lukk nå Loop by Next. Ta med rad- og kolonnevariabler som vi definerte og brukte i For-Next-loopen.

Kode:

 Underskjerm_Updating3 () Dim RowCount As Long Dim ColumnCount As Long .Value = MyNumber Next ColumnCount Next RowCount End Sub 

Trinn 9: Nå har vi ikke satt inn Screenupdating-applikasjonen ennå. Sett nå inn Screenupdating-applikasjonen som FALSE før starten av løkken og som SANN på slutten av løkken som vist nedenfor.

Kode:

 Underskjerm_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) .Velg celler (RowCount, ColumnCount) .Value = MyNumber Next ColumnCount Next RowCount Application.ScreenUpdating = True End Sub 

Sett sammen den komplette koden trinn for trinn ved å trykke på F8-funksjonstasten og kjør den hvis ingen feil blir funnet. Vi vil se hvordan hver celle av valgte rader og kolonner blir oppdatert med verdiene som er lagret i den.

Fordeler med Excel VBA ScreenUpdating

  • Det er ganske nyttig å se hvordan skjermen blir oppdatert med verdien som er lagret i loopen.
  • Vi kan bruke Screenupdating hvis vi vil veksle mellom arbeidsark og arbeidsbøker.
  • Vi kan bruke et hvilket som helst utvalg av tall.

Ting å huske

  • Vi bruker innsatsen For-Neste sløyfe som ramme eller først, vi kan tilfredsstille tilstanden til For sløyfe og deretter lukke den ved Neste.
  • VBA ScreenUpdating er ganske nyttig og synlig hvis vi bruker et enormt sett med tall.
  • Når du er ferdig, lagrer du excel-filen ettersom makro muliggjør Excel-format.
  • VBA ScreenUpdating kan også brukes til å lage en makro som vi kan sende e-post til.

Anbefalte artikler

Dette er en guide til VBA ScreenUpdating. Her diskuterer vi hvordan du bruker ScreenUpdating-applikasjon i Excel VBA sammen med praktiske eksempler og nedlastbar Excel-mal. Du kan også gå gjennom andre foreslåtte artikler -

  1. VBA-samling (eksempler)
  2. VBA IF-uttalelser | Excel-maler
  3. Hvordan bruke Excel VBA sorteringsfunksjon?
  4. VBA While Loop (eksempler med Excel-mal)
  5. VBA-miljø

Kategori: