Pauzirajte kod u VBA

Čak se pitam kako bi bilo sjajno kad bismo uspjeli pokrenuti kod prema našim vremenskim dozvolama jer do tada bismo uspjeli dovršiti drugi posao i pripremiti te podatke za daljnji posao. Ovo je potreba za bilo kakvim zadacima u kojima trebamo pokrenuti jedan skup koda i raditi na drugim stvarima prema zahtjevu koda, a dok se drugi dio koda ne pokrene, mi bismo bili spremni s podacima koje trebamo obraditi s isti kod. To se može učiniti pomoću aplikacije za spavanje i čekanje VBA. Mirovanjem i čekanjem možemo pauzirati kod u bilo kojem trenutku. Vrijeme može biti u sekundi ili vremenu prema satu.

Sintaksa VBA pauze u Excelu

Sintaksa za VBA Pause je sljedeća:

Primjeri za pauziranje VBA koda u Excelu

Ispod su sljedeći primjeri Pauziranja VBA koda u Excelu.

Možete preuzeti ovaj VBA Pause Excel predložak ovdje - VBA Pause Excel predložak

Primjer br. 1 - Pauza za VBA

U ovom primjeru vidjet ćemo kako funkcionira VBA Wait. Kao što vidimo aplikacija Wait dozvoljava Time kao Boolean. Što znači da je vrijednost koju hranimo ispravna, dobili bismo je kao TRUE FALSE.

Da biste vidjeli kako će VBA Pause raditi s aplikacijom Wait u VBA,

Korak 1: Prvo bi nam trebao Modul u koji ćemo pisati kod za to. Stoga prijeđite na izbornik Umetanje i odaberite Modul s padajuće opcije kao što je prikazano u nastavku.

Korak 2: Sada napišite podkategoriju u ime VBA Pauza ili u bilo koje drugo ime po vašem izboru, kako je prikazano u nastavku.

Kodirati:

 Sub VBAPause1 () Kraj Sub 

Za VBA stanku potreban nam je niz teksta koji bismo željeli ispisati s stankom. Razmislimo o tome da tekst bude " Get … Set … Idi … !! ”. Tako ćemo odabrati 3 različite ćelije gdje ćemo te tekstne riječi držati odvojeno u svakoj ćeliji.

Korak 3: Odaberite prvi raspon ćelije kao A1 ili bilo koju drugu ćeliju po izboru, a kako biste joj dali vrijednost, odaberite funkciju Value i dodijelite joj vrijednost kao što smo gore utvrdili. Ili odaberite bilo koju vrijednost po izboru.

Kodirati:

 Pod VBAPause1 () raspon ("A1"). Vrijednost = "Dobivanje …" Kraj sub 

Korak 4: Ostale vrijednosti dodijelite na isti način kao što smo učinili za prvu vrijednost. Ovdje odabiremo ćelije od A1 do C1 kao naš asortiman.

Kodirati:

 Pod VBAPause1 () raspon ("A1"). Vrijednost = "Dobijte …" raspon ("B1"). Vrijednost = "Postavi …" Raspon ("C1"). Vrijednost = "Idi … !!!" Kraj Sub 

Korak 5: Da kojim slučajem pokrenemo čitav kod dobili bismo sve vrijednosti Get. Set … Go .. !!! u jednom potezu od ćelije A1 do C1 kako je prikazano dolje.

Korak 6: Sada, ako želimo napraviti stanku između cijele stanke, trebali bismo koristiti aplikaciju Čekaj kao što je prikazano u nastavku. Ovu ćemo aplikaciju koristiti iznad posljednjeg raspona.

Kodirati:

 Pod VBAPause1 () raspon ("A1"). Vrijednost = "Dobijte …" raspon ("B1"). Vrijednost = "Postavi …" Aplikacija.Čekaj (raspon ("C1"). Vrijednost = "Idi ..!) !! "Kraj Sub 

Korak 7: U zagradu aplikacije Wait možemo zapisati vrijeme u 24HR formatu ili u AM / PM formatu. Razmatramo format 24HR. Sada napišite vrijeme u HH: MM: SS formatu kada želimo pokrenuti ostatak koda nakon stanke.

Kodirati:

 Pod VBAPause1 () raspon ("A1"). Vrijednost = "Dobijte …" raspon ("B1"). Vrijednost = "Postavi …" Aplikacija. Pričekajte ("12: 26: 00") Područje ("C1") .Value = "Idi .. !!!" Kraj Sub 

Korak 8: Sada sastavite kod i pokrenite ga ponovo. Vidjet ćemo, u ćeliji A1 dobili smo vrijednost ćelije kao "Get …", a kursor još uvijek radi.

Korak 9: I nakon što sat dosegne u 12:25:00 sati, tada će se ostale vrijednosti u ćeliji B1 i C1 opet pojaviti naizgled kao što je prikazano u nastavku.

Primjer br. 2 - Pauza za VBA

Postoji još jedan način na koji možemo pauzirati kôd bez dodavanja ili mijenjanja vremena u aplikaciji Wait više puta. Za ovo bismo pozvali isti kod koji smo vidjeli u primjeru-1.

Korak 1: Sada u zagradnju aplikacije Wait napišite Now () s TimeValue-om koje želimo dati. Razmotrimo stanku od 30 sekundi.

Kodirati:

 Pod VBAPause2 () raspon ("A1"). Vrijednost = "Dobijte …" raspon ("B1"). Vrijednost = "Postavi …" Aplikacija.Čekajte (Now () + TimeValue ("00:00:30") ) Domet ("C1"). Vrijednost = "Idi .. !!!" Kraj Sub 

Korak 2: Kada pokrenemo kod, VBA će razmotriti trenutno vrijeme i dodati će 30 sekundi pauze. I radit će na sličan način kao što je to radio u primjeru-1. Za provjeru, pokrenite kod.

Prvo ćemo dobiti vrijednost prve ćelije na A1.

I nakon 30 sekundi pauze, dat će preostale vrijednosti u ćeliji B1 i C1.

Primjer # 3 - Pauza za VBA

U ovom ćemo primjeru vidjeti kako VBA Pause radi sa Sleep aplikacijom. Ispod je sintaksa Sleep aplikacije koja omogućava da ByVal dwMillisekunde traje samo kao LongPtr .

Sada je ta vrijednost zapravo u VBA. Moramo unijeti unaprijed ugrađeni kod koji je dostupan u MS Docs kako je prikazano u nastavku.

Korak 1: Sada napišite podkategoriju za VBA Pause kao što je prikazano u nastavku.

Kodirati:

 Sub VBAPause3 () Kraj Sub 

Korak 2: Za to bismo trebali definirati 2 varijable za vrijeme pokretanja i spavanja kao string kao niže.

Kodirati:

 Sub VBAPause3 () Dim počinje od niza Dim Dim spava kao kraj žice Sub 

Korak 3: Dodijelite funkciju vremenu prvoj varijabli koja počinje .

Kodirati:

 Sub VBAPause3 () Dim Počinje kao string Nizanje Sleep as String Start = Time End Sub 

Korak 4: I pomoću Msgboxa možete vidjeti vrijednost pohranjenu u Starting varijabli.

Kodirati:

 Sub VBAPause3 () Dim počinje kao gudački Dim Sleeping as String Start = Vrijeme MsgBox Start End Sub 

Korak 5: Sada koristite Sleep aplikaciju i dodijelite broj milisekundi dok ne želimo spavati funkcije.

Kodirati:

 Sub VBAPause3 () Dim počinje kao gudački Dim Sleeping as string se kreće = vrijeme MsgBox start Sleeping = vremenski kraj Sub 

Korak 6: Sada na sličan način dodajte aplikaciju Time drugoj varijabli Sleeping . I pomoću MsgBox pogledajte vrijednost pohranjenu u varijabli Sleeping kao što je prikazano u nastavku.

Kodirati:

 Sub VBAPause3 () Dim započinje kao gudački Dim Sleeping as string se kreće = Vrijeme MsgBox počinje spavanje = Vrijeme MsgBox Sleeping End Sub 

Najzad, sastavite kôd i pokrenite ga klikom na gumb Reproduciraj koji se nalazi ispod trake izbornika kao što je prikazano u nastavku. Dobit ćemo okvir s porukom s vremenom koje će biti naše početno vrijeme.

Nakon što kliknemo OK, nakon 5000 milisekundi, vidjet ćemo još jednu kutiju s vremenom spavanja, kao što je prikazano u nastavku.

Vrijeme spavanja počet će tek nakon što kliknemo gumb Ok. Nije razlika u vremenu između početnog i spavanja vremena. Zapravo, vrijeme je nakon što kliknemo na gumb Ok u prvom okviru s porukama.

Pros VBA pauza

  • Vrlo je korisno kada imamo više funkcija koje treba obavljati s nekim vremenskim intervalom.
  • To se može koristiti u svrhu analize i izračuna.

Stvari koje treba zapamtiti

  • Proces poput VBA Pauze ne može se obaviti snimanjem makronaredbe.
  • Uvijek je bolje upotrijebiti postupak prikazan u primjeru 2 za aplikaciju Wait gdje ćemo biti sigurni od promjene vremena iznova i iznova, umjesto da samo zadržimo stanku od nekoliko sekundi nakon trenutnog vremena.
  • Aplikacija mirovanja iz primjera 3 omogućuje samo nekoliko sekundi
  • Kôd predgradnje prikazan na početku primjera-3 važan je dio koji treba primijeniti jer će zadovoljiti sintaksu aplikacije Sleep.

Preporučeni članci

Ovo je vodič za Pauza VBA. Ovdje smo raspravljali o tome kako možemo pauzirati kôd u bilo kojem trenutku pomoću aplikacije Wait and Sleep. Možete i pregledati ostale naše predložene članke -

  1. Kako se koristi VBA IsNumerička funkcija?
  2. Izrada kombinirane kutije u Excelu
  3. Umetnite CheckBox u Excel
  4. VBA UCASE funkcija u Excelu

Kategorija: