Excel VBA ScreenUpdating

Când rulăm orice macro VBA cu un set uriaș de cod, codul se completează, dar în fundal obținem prelucrarea datelor sub formă de rulare sau de așteptare a indicelui. Și odată terminat, putem vedea doar ieșirea. Modul obișnuit nu este modul corect de a vedea cum valorile se actualizează prin rularea codului. De exemplu, să zicem că am scris codul pentru a genera unele numere în 100 de celule. Acum, acest cod ar putea genera pur și simplu ieșirea fără a arăta cum se imprimă numerele. Pentru a rezolva acest lucru, avem VBA ScreenUpdating . ScreenUpdating în VBA ne ajută să vedem cum codul generează ieșirea. Acestea pot fi numere, text, alfabet sau combinație. Odată ce rulăm bucla de cod, prin VBA ScreenUpdating am putut vedea numerele generate.

Cum se utilizează aplicația ScreenUpdating în Excel VBA?

Vom învăța cum să folosiți aplicația ScreenUpdating în Excel, folosind Codul VBA.

Puteți descărca acest șablon VBA ScreenUpdating Excel - șablonul VBA ScreenUpdating Excel

VBA ScreenUpdating poate fi observat în timp ce rulăm codul sau macro-ul. În timp ce codul rulează, vom putea vedea cum ecranul nostru se actualizează prin valorile generate de codul scris în VBA. În loc să vedem semnul de așteptare mai vechi, cu ajutorul VBA ScreenUpdating putem vedea cum ecranul actualizează valorile de ieșire de către VBA ScreenUpdating. Acum, putem vedea, de asemenea, numele articolului în sine îl definește funcționarea, VBA ScreenUpdating .

VBA ScreenUpdating - Exemplul # 1

În acest exemplu, vom vedea un cod simplu pentru actualizarea ecranului. Pentru aceasta, avem nevoie de câteva celule cu numere, după cum se arată mai jos. Pentru aceasta, urmați pașii de mai jos:

Pasul 1: Deschideți un modul din fila Meniu Insert, așa cum se arată mai jos.

Pasul 2: Acum scrieți subprocedura în numele VBA ScreenUpdating așa cum se arată mai jos.

Cod:

 Sub Screen_Update1 () End Sub 

Pasul 3: Acum vom copia numerele din celula A1: A3 în orice alte celule. Să spunem că celula să fie C1: C3 cu ajutorul codului de mai jos.

Cod:

 Sub Screen_Update1 () Interval ("A1"). Interval de copiere ("C1") ("A2"). Interval de copiere ("C2") ("A2"). Range de copiere ("C3") 

Pasul 4: Acum, dacă rulăm acest cod, am putea obține doar ieșirea care este copiată valorile de la coloana A la C. Acum vom folosi aplicația ScreenUpdating așa cum se arată mai jos.

Cod:

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

Pasul 5: Punem un semn egal pentru a selecta valorile booleane care sunt TRUE sau FALSE. Vom selecta FALSE pentru a opri programarea ecranului.

Cod:

 Sub Screen_Update1 () Application.ScreenUpdating = Gama falsă ("A1"). Interval de copiere ("C1") ("A2"). Interval de copiere ("C2") Interval ("A3"). ) End Sub 

Pasul 6: Rulați codul apăsând tasta F5 sau făcând clic pe butonul Redare situat sub panglica meniului. Vom vedea că valorile sunt copiate de la coloana A la C.

Acest lucru ar putea fi văzut mai clar dacă avem un set imens de numere.

VBA ScreenUpdating - Exemplul # 2

Să vedem un alt exemplu pentru ScreenUpdating. De data aceasta, să luăm în considerare numărul de la 1 la 20 de la celula A1 la A20 așa cum se arată mai jos.

Pentru a utiliza aplicația de ecranizare, urmați pașii de mai jos:

Pasul 1: Scrieți subprocedura VBA Screenupdating așa cum se arată mai jos.

Cod:

 Sub Screen_Update2 () End Sub 

Pasul 2: Acum scrieți codul pentru a selecta celula de la A1 la A20 și copiați-le la B1 până la F20, așa cum se arată mai jos. Într-o manieră similară cum am văzut în exemplul 1.

Cod:

 Sub Screen_Update2 () Interval ("A1: A20"). Interval de copiere ("B1: F20") End Sub 

Pasul 3: Pentru a aplica aplicația de ecranizare, vom folosi din nou o linie similară de cod pe care am văzut-o în exemplul 1.

Cod:

 Sub Screen_Update2 () Application.ScreenUpdating = Interval fals ("A1: A20"). Interval de copiere ("B1: F20") End Sub 

Aplicația utilizată mai sus ScreenUpdating ca FALSE ne va permite să vedem cum codul VBA actualizează ecranul. Deoarece avem mai multe numere, există șanse să vedem ecranizare.

Pasul 4: Rulați codul apăsând tasta F5 sau făcând clic pe butonul Redare. Am putut vedea actualizarea valorii.

VBA ScreenUpdating - Exemplul # 3

Există un alt mod de a vedea actualizarea ecranului. Acest lucru ar putea fi realizat cu ajutorul Buclei For-Next. În acest exemplu, vom tipări numerele într-o matrice combo Row și Coloană. Pentru aceasta, urmați pașii de mai jos:

Pasul 1: Scrieți subprocedura VBA ScreenUpdating.

Cod:

 Sub Ecran_Updating3 () End Sub 

Pasul 2: Acum declarați separat cele 2 variabile pentru Rând și Coloane ca tip de date Long.

Cod:

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

Pasul 3: Acum declarați o altă variabilă pe care o vom folosi ca referință pentru a începe numerele.

Cod:

 Sub Ecran_Updating3 () Dim RowCount Cât Dim Dim ColumnCount As Long Dim MyNumber As Long End Sub 

Pasul 4: Acum dați numărul de referință din ce poziție dorim să începem numărarea. Aici îl dăm ca 0.

Cod:

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

Pasul 5: Acum deschideți o buclă For și dați numărul de coloane și rânduri care doresc să vadă actualizarea. Să spunem de la 1 la 50.

Cod:

 Sub Screen_Updating3 () Dim RowCount Cât Dim Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 For RowCount = 1 To 50 End Sub 

Pasul 6: Pentru a continua bucla, dați variabila MyNumber +1.

Cod:

 Sub Screen_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 

Pasul 7: Acum selectați variabilele Rând și Coloană în funcția Celulă. Și apoi selectați valorile stocate în ele și atribuiți-le variabilei MyNumber.

Cod:

 Sub Screen_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) .Select Cells (RowCount, ColumnCount) .Value = Subnumărul meu final 

Pasul 8: Acum închideți Bucla cu Următorul. Includeți variabile Row și Coloană pe care le-am definit și le-am folosit în bucla For-Next.

Cod:

 Sub Screen_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) .Select Cells (RowCount, ColumnCount) .Value = MyNumber Next ColumnCount Next RowCount Sub 

Pasul 9: Acum nu am introdus încă aplicația Screenupdating. Acum introduceți aplicația Screenupdating ca FALSE înainte de începerea buclei și ca TRUE la sfârșitul buclei, așa cum se arată mai jos.

Cod:

 Sub Screen_Updating3 () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long Application.ScreenUpdating = MyNumber False = 0 For RowCount = 1 To 50 For ColumnCount = 1 To 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount) .Select Cells (RowCount, ColumnCount) .Value = MyNumber Next ColumnCount Next RowCount Application.ScreenUpdating = Sub final final 

Acum compilați codul complet pas cu pas apăsând tasta funcțională F8 și apoi executați-l dacă nu se găsește nicio eroare. Vom vedea cum fiecare celulă a rândurilor și coloanelor selectate este actualizată cu valorile stocate în ea.

Beneficiile Excel VB ScreenUpdating

  • Este foarte util să vedeți cum se actualizează ecranul cu valoarea stocată în buclă.
  • Putem folosi Screenupdating dacă dorim să comutăm între fișele de lucru și cărțile de lucru.
  • Putem folosi orice gamă de numere.

Lucruri de amintit

  • Folosim bucla de inserție For-Next ca cadru sau mai întâi, putem satisface condiția de buclă For și apoi o putem închide prin Next.
  • VBA ScreenUpdating este destul de util și vizibil dacă folosim un set imens de numere.
  • Odată terminat, salvați fișierul excel, deoarece Macro permite formatul excel.
  • VBA ScreenUpdating poate fi folosit și pentru crearea unei macro prin care putem trimite e-mailuri.

Articole recomandate

Acesta este un ghid pentru VBA ScreenUpdating. Aici vom discuta despre cum să folosiți aplicația ScreenUpdating în Excel VBA, împreună cu exemple practice și șablon Excel descărcabil. De asemenea, puteți parcurge și alte articole sugerate -

  1. Colecția VBA (exemple)
  2. Declarații VBA IF | Șabloane Excel
  3. Cum se utilizează funcția de sortare Excel VBA?
  4. În timp ce bucla VBA (exemple cu șablonul Excel)
  5. VBA Environ

Categorie: