VBA DoEvents | Kā un kad lietot funkciju DoEvents?

Excel VBA DoEvents funkcija

Ar VBA DoEvents palīdzību mēs varam likt kodam darboties fonā un vienlaikus ļauj strādāt arī ar Excel un citu lietojumprogrammatūru. DoEvents ne tikai ļauj mums strādāt ar citu programmatūru, bet mēs varam arī pārtraukt koda darbību.

DoEvents funkcija nodod kontroli datora, pie kura strādājam, operētājsistēmai.

Kā izmantot funkciju DoEvents?

Ja prasība ir milzīga, ir nepieciešams liels VBA koda daudzums. Tādos gadījumos Excel kādu laiku uzkaras un apstājas, un pat dažreiz tas vairs nereaģē.

Šo VBA DoEvents Excel veidni varat lejupielādēt šeit - VBA DoEvents Excel veidne

Piemēram, skatiet zemāk esošo kodu.

Kods:

 Sub DoEvents_Example1 () Dim i tik ilgi, kamēr i = 1 līdz 100000 diapazons ("A1"). Vērtība = i Nākamais i Beigas Sub 

Iepriekš minētais kods ievietos sērijas numurus no 1 līdz 100 000. Uzdevuma izpilde var ilgt vairāk nekā minūti. Izpildes laikā Excel uzkaras uz ievērojamu laiku, lai veiktu uzdevumu. Šajā laikā excel parāda ziņojumu kā “Excel nereaģē”.

Turklāt mēs nevaram piekļūt darblapai, pie kuras strādājam. Tā ir sarūgtinoša lieta. Tad kā padarīt Excel darblapu pieejamu darbam, kamēr kods darbojas aiz ekrāna.

To var panākt, pievienojot funkciju VBA DoEvents .

Kods:

 Sub DoEvents_Example1 () Dim i tik ilgi, kamēr i = 1 līdz 100000 diapazons ("A1"). Vērtība = i DoEvents Next i End Sub 

Brīdī, kad kodā pievienojam funkciju DoEvents, mēs varam piekļūt Excel darblapai.

No augšas mēs varam redzēt, ka kods darbojas, bet mēs varam piekļūt darblapai.

Pārtrauciet koda darbību

Kad kods darbojas aiz ekrāna, mēs varam pievienot rindas, kolonnu un tos izdzēst, mēs varam pārdēvēt lapu un mēs varam darīt arī daudzas citas lietas. Brīdī, kad mēs pievienojam DoEvents, tas ļauj vba kodam darboties ātri un ļauj mums nokrist, ka minētais uzdevums darbojas pats par sevi.

  • Viena no DoEvents funkcijas briesmām ir tad, kad mēs pārslēdzam darblapas vai darbgrāmatas, un tā pārraksta aktīvo lapu vērtības.
  • Vēl viena bīstamība ir tāda, ka, ievadot šūnā kādu vērtību, koda izpilde tiek apstādināta, un tā mūs pat nepaziņo.
Piezīme : Neskatoties uz iepriekšminētajām DoEvents briesmām, tā joprojām ir ērta funkcija. Mēs varam izmantot DoEvents kā atkļūdošanas procesa daļu, mēģinot novērst uzrakstītā koda kļūdas.

$config[zx-auto] not found$config[zx-overlay] not found