VBA-odotustoiminto

Samanlainen kuin nukkumistoiminto VBA-odotustoiminto saa koodin odottamaan tai pysäyttämään muutaman sekunnin. Kuinka sellaisia ​​toimintoja käytetään, että joudumme tekemään jokin erityinen koodi taukotilaan tai pidempään, jotta jokin muu ohjelma toimisi ensin ja sitten jatkaa toista ohjelmaa. Sitä kutsutaan myös Application.Wait -menetelmäksi VBA: ssa.

Kuten nimestä voi päätellä, VBA: n odotustoimintoa VBA: lla käytetään ohjelman pitämiseen tiettyyn aikaan, jotta toinen koodi voi toimia kyseisenä aikana. Taustasovellukset toimivat jatkuvasti ja vain nykyinen moduuli odottaa.

Excel VBA: n odotustoiminnon syntaksi

Syntaksi, jolla käytetään Application.Wait-funktiota VBA: ssa, on seuraava:

Tämä toiminto palauttaa Boolen arvon.

Joten jos tarvitsemme koodia odottamaan tänään klo 14.00 asti, koodin syntaksi on seuraava:

Sovellus.Odota (“14:00:00”)

Yllä oleva koodi saa koodin pysähtymään klo 14.00 asti ja koodi jatkuu vasta klo 14.00 jälkeen. Tämä ei ole optimaalista, jotta koodi odottaa 2 PM, yleensä haluamme odottaa tiettyä koodia vielä 10 sekuntia ja suorittaa sitten. Jos minun täytyy tehdä koodi odottaa 10 sekuntia, koodi on seuraava:

Sovellus.Odota (nyt + aika-arvo (”0:00:10”))

Nyt on toiminto, joka vie nykyisen ajan, ja lisäämme 10 sekuntia nykyiseen aikaan aika-arvofunktiolla, jotta koodi voi odottaa tai keskeyttää 10 sekuntia.

Huomaa: Jotta voisimme käyttää VBA: ta, kehittäjä-välilehti on oltava käytössä Asetukset-osion Tiedostot-välilehdessä.

Kuinka käyttää Excel VBA -toimintoa?

Opimme käyttämään VBA Wait Excel -toimintoa muutamalla esimerkillä.

Voit ladata tämän VBA Wait Excel -mallin täältä - VBA Wait Excel Template

VBA-odotustoiminto - esimerkki # 1

Tällä hetkellä kannettavan tietokoneen aika on 15:50 ja haluan, että koodi jatkuu kello 16:00. Käytämme yksinkertaista lisäystä joihinkin muuttujiin, mutta tulos näytetään klo 16.00 jälkeen. Haluamme koodin odottavan kyseistä ajanjaksoa.

Vaihe 1: Siirry Kehittäjä- välilehteen ja avaa VB Editor napsauttamalla Visual Basic -painiketta.

Vaihe 2: Napsauta Lisää välilehti ja napsauta sitten moduulia .

Vaihe 3: Kun koodi-ikkuna avautuu, ilmoita alatoiminto aloittaaksesi koodin kirjoittamisen.

Koodi:

 Alinäyte () Loppu alaosaan 

Vaihe 4: Ilmoita kolme muuttujaa AB ja C kokonaislukuna.

Koodi:

 Alinäyte () himmentää A, B, C kokonaislukuna loppuun alaosa 

Vaihe 5: Määritä satunnaisarvot A- ja B-muuttujille.

Koodi:

 Alinäyte () himmentää A, B, C kokonaislukuna A = 10 B = 15 End Sub 

Vaihe 6: Käytä application.wait-toimintoa, jotta funktio odottaa klo 16.00 asti.

Koodi:

 Alinäyte () himmentää A, B, C kokonaislukuna A = 10 B = 15 sovellusta.Odota ("16:00:00") Lopeta alaosa 

Vaihe 7: Käytä A: n ja B : n lisäystä ja tallenna lähtö C: hen.

Koodi:

 Alinäyte () himmennetty A, B, C kokonaislukuna A = 10 B = 15 sovellusta.Odota ("16:00:00") C = A + B loppu Sub 

Vaihe 8: Käytä Msgbox-toimintoa näyttääksesi C: n arvon.

Koodi:

 Alinäyte () Dim A, B, C Kokonaislukuna A = 10 B = 15 Sovellus.Odota ("16:00:00") C = A + B MsgBox C Loppu Sub 

Vaihe 9: Suorita yllä oleva koodi. Kun suoritamme koodin, näemme, että koodi ei näytä viestiä ennen klo 16.00, mutta klo 16.00 jälkeen saan seuraavan tulosteen.

Minun piti odottaa klo 16.00 asti nähdäkseni tämän tuloksen. Msgbox-toiminnon koodin piti tosiasiallisesti odottaa.

VBA-odotustoiminto - esimerkki 2

Katsotaanpa koodia joidenkin henkilökohtaisten viestien kanssa, että koodi odottaa 10 sekuntia ja 10 sekunnin kuluttua se näyttää, että odotusaika on kulunut umpeen ja lopullinen tulos.

Vaihe 1: Siirry Kehittäjä- välilehteen ja avaa VB Editor napsauttamalla Visual Basic -painiketta.

Vaihe 2: Ilmoita alatoiminto aloittaaksesi koodin kirjoittamisen.

Koodi:

 Alinäyte1 () Loppu alaosa 

Vaihe 3: Ilmoita kolme muuttujaa AB ja C kokonaislukuna.

Koodi:

 Alinäyte1 () himmentää A, B, C kokonaislukuna loppuun alaosa 

Vaihe 4: Määritä satunnaisarvot A- ja B-muuttujille.

Koodi:

 Alinäyte1 () himmentää A, B, C kokonaislukuna A = 2 B = 10 Loppu alaosa 

Vaihe 5: Käytä Msgbox-toimintoa näyttääksesi, että odotusaika on alkamassa.

Koodi:

 Alinäyte1 () himmennetty A, B, C kokonaislukuna A = 2 B = 10 msgBox "Odotusaika on alkanut" End Sub 

Vaihe 6: Odota-toimintoa odottaa koodia 10 sekuntia.

Koodi:

 Alinäyte1 () himmennetty A, B, C kokonaislukuna A = 2 B = 10 msgBox "Odotusaika on alkanut" Sovellus.Odota (nyt + aika-arvo ("0:00:10")) Lopeta alaosa 

Vaihe 7: Muuttuja C tallentaa B / A-arvon ja näyttää henkilökohtaisen viestin, jonka odotusaika on ohi, ja näyttää sitten C-arvon.

Koodi:

 Alinäyte1 () himmennetty A, B, C kokonaislukuna A = 2 B = 10 msgBox "Odotusaika on käynnistetty" Application.Wait (Now + TimeValue ("0:00:10")) C = B / A MsgBox " Odotusaika on ohi. "MsgBox C End Sub 

Vaihe 8: Suoritamme koodin ja näemme ensimmäisen viestin seuraavalla tavalla.

Vaihe 9: Paina OK nähdäksesi seuraavan tuloksen 10 sekunnin kuluttua.

Vaihe 10: Kun painamme ok, saat lopputuloksen.

Yllä olevassa esimerkissä teimme koodin odottamaan 10 sekuntia ja näyttämään sitten C-arvon tulos.

VBA-odotustoiminto - esimerkki 3

Nyt nimitetään taulukot arkki 1 ja arkki 2 vastaavasti Anandiksi ja Araniksi, mutta haluamme 5 sekunnin välin kummankin arkin uudelleennimeämiseksi.

Vaihe 1: Siirry Kehittäjä-välilehteen ja avaa VB Editor napsauttamalla Visual Basic -painiketta.

Vaihe 2: Ilmoita alatoiminto aloittaaksesi koodin kirjoittamisen.

Koodi:

 Alinäyte2 () Loppu alaosaan 

Vaihe 3: Aktivoi ensimmäinen laskentataulukko.

Koodi:

 Alinäyte2 () -laskentataulukot ("Arkki1"). Aktivoi alaosa 

Vaihe 4: Nimeä ensimmäinen taulukko uudelleen Anandiksi.

Koodi:

 Alinäyte2 () laskentataulukot ("Arkki1"). Aktivoi laskentataulut ("Arkki1"). Nimi = "Anand" Lopeta alaosa 

Vaihe 5: Näytä viesti, että arkki 1 on nimetty uudelleen ja koodi taukoaa viiden sekunnin ajan.

Koodi:

 Alinäyte2 () laskentataulukot ("Arkki1"). Aktivoi laskentataulut ("Arkki1"). Nimi = "Anand" MsgBox "Arkki 1, joka on nimetty uudelleen koodiksi, keskeyttää 5 sekunnin ajan." 

Vaihe 6: Käytä Odota-toimintoa, jotta koodi odottaa viisi sekuntia.

Koodi:

 Alinäyte2 () laskentataulukot ("Arkki1"). Aktivoi laskentataulukot ("Arkki1"). Nimi = "Anand" MsgBox "Nyt uudeksi nimetty taulukko 1 keskeyttää viiden sekunnin ajan" Sovellus.Odota (nyt + aika-arvo ("0:00: 05 ")) Loppu alaosa 

Vaihe 7: Nimeä toinen arkki 2 uudelleen Araniksi.

Koodi:

 Alinäyte2 () laskentataulukot ("Arkki1"). Aktivoi laskentataulukot ("Arkki1"). Nimi = "Anand" MsgBox "Nyt uudeksi nimetty taulukko 1 keskeyttää viiden sekunnin ajan" Sovellus.Odota (nyt + aika-arvo ("0:00: 05 ")) Laskentataulukot (" Sheet2 "). Aktivoi taulukot (" Sheet2 "). Nimi =" Aran "End Sub 

Vaihe 9: Näytä viesti, että arkki 2 on nimetty uudelleen ja odotus on kulunut.

Koodi:

 Alinäyte2 () laskentataulukot ("Arkki1"). Aktivoi laskentataulukot ("Arkki1"). Nimi = "Anand" MsgBox "Nyt uudeksi nimetty taulukko 1 keskeyttää viiden sekunnin ajan" Sovellus.Odota (nyt + aika-arvo ("0:00: 05 ")) Laskentataulukot (" Sheet2 "). Aktivoi taulukot (" Sheet2 "). Name =" Aran "MsgBox" Odotusaika on ohi ja arkki 2 on myös nimetty uudelleen "End Sub 

Vaihe 10: Suorita nyt koodi nähdäksesi tuloksen.

Voimme nähdä, että arkki 1 on nimetty uudelleen nimellä Anand ja saamme viestin odottaa viisi sekuntia. Napsauta OK ja odota viisi sekuntia toista viestiä.

Yllä olevista esimerkeistä on selvää, kuinka voit odottaa toimintoa VBA: ssa.

Muistettavat asiat

On joitain asioita, jotka meidän on muistettava Excel VBA Wait Function -toiminnosta:

  • Se on samanlainen kuin nukkumistoiminto.
  • Odotustoiminto on sisäänrakennettu VBA: hon toisin kuin nukkumistoiminto, joka on Windows-toiminto.
  • Odota-toiminto vie aikaa argumentiksi.

Suositellut artikkelit

Tämä on opas VBA-odotustoimintoon. Tässä keskustelimme siitä, kuinka käyttää Excel VBA Wait Function -toimintoa käytännön esimerkkien ja ladattavan Excel-mallin kanssa. Voit myös käydä läpi muiden ehdottamiemme artikkeleidemme -

  1. Kuinka käyttää VBA-ajastinta?
  2. Vähennä aika Excelissä
  3. Opas Excel VBA -aikaan
  4. NYT Excel-toiminto

Luokka: