Acasă Social media Cum se utilizează Evenimente OnTime și Evenimente Keypress în Excel 2016 VBA - dummies

Cum se utilizează Evenimente OnTime și Evenimente Keypress în Excel 2016 VBA - dummies

Cuprins:

Video: Xiaomi Mi 9 PARAMPARÇA! TÜRKİYE'DE İLK teknik özellikler! 2025

Video: Xiaomi Mi 9 PARAMPARÇA! TÜRKİYE'DE İLK teknik özellikler! 2025
Anonim

Există două tipuri de evenimente pe care le puteți utiliza în programarea VBA pentru Excel 2016 care nu sunt asociate cu obiecte: timpul și apăsările de taste. Deoarece timpul și apăsările de taste nu sunt asociate cu un anumit obiect, cum ar fi un registru de lucru sau o foaie de lucru, programați aceste evenimente într-un modul VBA normal.

Evenimentul OnTime

Evenimentul OnTime apare când apare un anumit moment al zilei. Următorul exemplu demonstrează modul de a obține Excel să execute o procedură atunci când 3 p. m. evenimentul apare. În acest caz, o voce robot vă spune să vă treziți, însoțită de o casetă de mesaj:

Sub SetAlarm () Aplicație. OnTime 0. 625, aplicația "DisplayAlarm" End Sub Sub DisplayAlarm (). Vorbire. Vorbește ("Hei, trezește-te") MsgBox "E timpul pentru pauza de după-amiază! "End Sub

În acest exemplu, se folosește metoda OnTime a obiectului Application. Această metodă are două argumente: timpul (0,625 sau 3:00 p. M.) Și numele procedurii Sub care se execută la producerea evenimentului de timp (DisplayAlarm).

Această procedură este destul de utilă dacă tind să fii atât de înrădăcinată în munca pe care o uiți de întâlniri și întâlniri. Doar setați un eveniment OnTime pentru a vă reaminti.

Majoritatea oamenilor consideră că este dificil să se gândească la timp în ceea ce privește sistemul de numerotare Excel. Prin urmare, poate doriți să utilizați funcția VBA TimeValue pentru a reprezenta timpul. TimeValue convertește un șir care arată ca o perioadă într-o valoare pe care Excel o poate gestiona. Următoarea declarație arată o modalitate mai ușoară de programare a unui eveniment pentru 3 pagini. m.:

Aplicație. OnTime TimeValue ("3: 00: 00 pm"), "DisplayAlarm"

Dacă doriți să programați un eveniment relativ la ora curentă (de exemplu, 20 de minute de acum) Aplicație. OnTime Now + TimeValue ("00: 20: 00"), "DisplayAlarm"

De asemenea, puteți utiliza metoda OnTime pentru a rula o procedură VBA într-o anumită zi. Trebuie să vă asigurați că computerul continuă să funcționeze și că registrul de lucru al procedurii este deschis. Următoarea declarație rulează procedura DisplayAlarm la 5 p. m. la data de 31 decembrie 2016:

Cerere. OnTime DateValue ("31/31/2016 5:00"), "DisplayAlarm"

Această linie de cod specială ar putea fi utilă pentru a vă avertiza că trebuie să vă duceți acasă și să vă pregătiți pentru festivitățile de Revelion.

Iată un alt exemplu care utilizează evenimentul OnTime. Executarea procedurilor UpdateClock scrie timpul la celula A1 și, de asemenea, programează un alt eveniment cu cinci secunde mai târziu.Acest eveniment reia procedura UpdateClock. Efectul net este că celula A1 este actualizată cu timpul curent la fiecare cinci secunde. Pentru a opri evenimentele, executați procedura StopClock (care anulează evenimentul). Rețineți că NextTick este o variabilă la nivel de modul care stochează timpul pentru următorul eveniment.

Dim NextTick ca Data Sub UpdateClock () 'Actualizează celula A1 cu ora curentă ThisWorkbook. Foi (1). Intervalul ("A1") = Timpul 'Setarea următorului eveniment de cinci secunde de acum. NextTick = Now + TimeValue ("00: 00: 05") Aplicație. OnTime NextTick, "UpdateClock" End Sub Sub StopClock () 'Anulează evenimentul OnTime (oprește ceasul) La eroare Reluare Următoarea aplicație. OnTime NextTick, "UpdateClock", False End Sub

Evenimentul OnTime persistă chiar și după ce se închide registrul de lucru. Cu alte cuvinte, dacă închideți registrul de lucru fără a rula procedura StopClock, registrul de lucru se va redeschide în cinci secunde (presupunând că programul este încă în execuție). Pentru a preveni acest lucru, utilizați o procedură Eveniment Workbook_BeforeClose care conține următoarea declarație:

Call StopClock

Metoda OnTime are două argumente suplimentare. Dacă intenționați să utilizați această metodă, trebuie să consultați sistemul de ajutor pentru detalii complete.

Dacă doriți să vedeți o aplicație destul de complicată, verificați această aplicație analogică. Fața ceasului este de fapt o diagramă, iar graficul este actualizat în fiecare secundă pentru a afișa ora din zi. Inutil, dar distractiv.

O aplicație analogică de ceas.

Evenimente cheie

În timp ce lucrați, Excel monitorizează constant ceea ce tastați. Din această cauză puteți seta lucrurile astfel încât o tastatură sau o combinație de taste să execute o procedură.

Iată un exemplu care reassignează tastele PgDn și PgUp:

Sub Application_OnKey () Application. Aplicație OnKey "{PgDn}", "PgDn_Sub". OnKey "{PgUp}", "PgUp_Sub" Sfârșit Sub Sub PgDn_Sub () La eroare Reluați Următorul ActiveCell. Offset (1, 0). Activați End Sub Sub PgUp_Sub () La eroare Reluați Următorul ActiveCell. Offset (-1, 0). Activați End Sub

După ce ați setat evenimentele OnKey executând procedura Setup_OnKey, apăsând PgDn vă mută într-un rând. Apăsând PgUp vă mută un rând.

Observați că codurile cheie sunt închise în brațe, nu în paranteze. Pentru o listă completă a codurilor de tastatură, consultați sistemul de ajutor. Căutați

OnKey. În acest exemplu, pe eroare Resume Next este folosit pentru a ignora eventualele erori generate. De exemplu, dacă celula activă se află în primul rând, încercarea de a deplasa în sus un rând duce la o eroare care poate fi ignorată în siguranță. Și dacă o foaie de diagramă este activă, nu există o celulă activă.

Prin executarea următoarei rutine, anulați evenimentele OnKey:

Sub Application Cancel_OnKey (). OnKey "{PgDn}" Aplicație. OnKey "{PgUp}" End Sub

Folosind un șir gol ca al doilea argument pentru metoda OnKey,

nu anulează evenimentul OnKey. Mai degrabă, face ca Excel să ignore pur și simplu tasta. De exemplu, următoarea declarație spune Excel să ignore Alt + F4. Semnul procentual reprezintă tasta Alt: Aplicație.OnKey "% {F4}", ""

Deși puteți utiliza metoda OnKey pentru a atribui o cheie de comandă rapidă pentru executarea unei macrocomenzi, ar trebui să utilizați caseta de dialog Opțiuni macro pentru această sarcină.

Dacă închideți registrul de lucru care conține codul și lăsați Excel deschis, metoda OnKey nu va fi resetată. Prin urmare, apăsarea tastei de comandă rapidă va determina Excel să deschidă automat fișierul cu ajutorul macrocomenzii. Pentru a preveni acest lucru, trebuie să includeți codul în codul evenimentului Workbook_BeforeClose pentru a reseta evenimentul OnKey.

Cum se utilizează Evenimente OnTime și Evenimente Keypress în Excel 2016 VBA - dummies

Alegerea editorilor

Cum puteți obține toate valorile într-o tabelă Pivot Excel - dummies

Cum puteți obține toate valorile într-o tabelă Pivot Excel - dummies

Care recuperează datele dintr-o tabelă pivot Excel. Spuneți că doriți să înregistrați unele dintre datele afișate într-un tabel pivot. De asemenea, puteți prelua o întreagă tabelă pivot. Pentru a prelua toate informațiile într-o tabelă pivot, urmați acești pași: Selectați tabelul de pivot făcând clic pe o celulă ...

Cum puteți obține ajutor în Excel 2010 - manechine

Cum puteți obține ajutor în Excel 2010 - manechine

Puteți utiliza fereastra Ajutor Excel pentru a găsi rapid răspunsurile. Butonul Ajutor Excel - cercul albastru cu semnul întrebării, situat în partea dreaptă a ultimei filete Ribbon - oferă acces rapid la Ajutor. Anumite comenzi de pe Panglică ...

Obținerea unei singure valori dintr-o tabelă Pivot Excel - dummies

Obținerea unei singure valori dintr-o tabelă Pivot Excel - dummies

Valoare dintr-o tabelă pivot Excel utilizând o formulă, creați o referință de celule. De exemplu, să presupunem că doriți să preluați valoarea afișată în celula C8 din foaia de lucru. Mai mult, presupuneți că doriți să plasați această valoare în celula C15. Pentru a face acest lucru, faceți clic pe celula C15, tastați = ...

Alegerea editorilor

Modul de prioritizare a vulnerabilităților de securitate ale sistemului dvs. - machete

Modul de prioritizare a vulnerabilităților de securitate ale sistemului dvs. - machete

Nu pot fi fixate, iar altele ar putea să nu fie în valoare. S-ar putea să nu reușiți să eliminați unele vulnerabilități din diferite motive tehnice și este posibil să nu vă puteți permite să eliminați alții. Sau, pur și simplu, afacerea dvs. poate avea ...

Cum să minimizați riscurile de hacking legate de stocare - manechine

Cum să minimizați riscurile de hacking legate de stocare - manechine

Legate de hacks. Hackerii folosesc diferite vectori de atac și instrumente pentru a intra în mediul de stocare. Prin urmare, trebuie să cunoașteți tehnicile și instrumentele dvs. și să le folosiți pentru a testa propriul mediu de stocare. Există o mulțime de concepții greșite și mituri legate de ...

Cum se folosește Hyper-V Manager - manechine

Cum se folosește Hyper-V Manager - manechine

-V Manager, prezentat aici. Pentru a porni acest program, faceți clic pe butonul Start, tastați Hyper-V, apoi selectați Hyper-V Manager. Manager Hyper-V. Fereastra Hyper-V Manager este împărțită în cinci panouri: Navigare: În partea stângă a ferestrei est

Alegerea editorilor

Cum să treci prin imagini pe rebel t5i - manechine

Cum să treci prin imagini pe rebel t5i - manechine

Dacă cartela de memorie din Canon Rebel t5i conține pachete de fișiere, iată un truc pe care îl veți iubi: Folosind funcția Jump, puteți roti cadranul principal pentru a trece prin ele, mai degrabă decât să le deplasați unul câte unul pentru a ajunge la fișierul pe care doriți să-l vedeți. De asemenea, puteți căuta ...

Cum să treci prin imagini pe Canon Rebel T5 / 1200D - manechine

Cum să treci prin imagini pe Canon Rebel T5 / 1200D - manechine

Utilizând funcția Jump de pe Canon Rebel T5 / 1200D, puteți roti selectorul principal pentru a face saltul prin imagini pentru a ajunge la imaginea pe care doriți să o vedeți. De asemenea, puteți căuta prima fotografie dată la o anumită dată, spuneți camerei să afișeze numai filme sau doar fotografii sau să afișeze ...

Cum se blochează butonul de control rapid Canon EOS 60D - manechine

Cum se blochează butonul de control rapid Canon EOS 60D - manechine

Poate fi frustrant când "lucrați într-un mod Zone Creative de pe camera dvs. Canon EOS 60D, iar în mod accidental puteți să îndreptați cadranul de comandă rapidă și să modificați viteza obturatorului sau diafragma aleatorie. Asta e vestea proastă. Vestea bună este că puteți bloca cadranul la locul lui atunci când sunteți ...