Hjem Social Media Sådan bruges OnTime Events og Keypress Events i Excel 2016 VBA - dummies

Sådan bruges OnTime Events og Keypress Events i Excel 2016 VBA - dummies

Indholdsfortegnelse:

Video: How to use YouTube TV while traveling in the United States | US only 2024

Video: How to use YouTube TV while traveling in the United States | US only 2024
Anonim

Der er to typer begivenheder, du kan bruge i VBA-programmering til Excel 2016, der ikke er forbundet med objekter: tid og tastetryk. Da tid og tastetryk ikke er knyttet til en bestemt genstand, såsom en projektmappe eller et regneark, programmerer du disse begivenheder i et normalt VBA-modul.

OnTime-begivenheden

OnTime-begivenheden opstår, når en bestemt tid på dagen opstår. Følgende eksempel viser, hvordan man får Excel til at udføre en procedure, når 3 p. m. hændelsen opstår. I dette tilfælde fortæller en robot stemme dig at vågne op, ledsaget af en meddelelsesboks:

Sub SetAlarm () Application. OnTime 0. 625, "DisplayAlarm" End Sub Sub DisplayAlarm () Application. Tale. Tal ("Hej, vågn op") MsgBox "Det er tid til din eftermiddagsferie! "End Sub

I dette eksempel bruges OnTime-metoden i applikationsobjektet. Denne metode tager to argumenter: tiden (0. 625 eller 3: 00 s. M.) Og navnet på subproceduren, der skal udføres, når tidsbegivenheden opstår (DisplayAlarm).

Denne procedure er meget nyttig, hvis du har tendens til at blive så indpakket i dit arbejde, at du glemmer møder og aftaler. Bare sæt en OnTime-begivenhed for at minde dig selv.

De fleste mennesker finder det svært at tænke på tid i form af Excel nummereringssystemet. Derfor kan du bruge funktionen VBA TimeValue til at repræsentere tiden. TimeValue konverterer en streng, der ligner en tid i en værdi, som Excel kan håndtere. Følgende erklæring viser en nemmere måde at programmere en begivenhed for 3 p. m.:

Program. OnTime TimeValue ("3:00:00"), "DisplayAlarm"

Hvis du vil planlægge en begivenhed i forhold til den aktuelle tid (for eksempel 20 minutter fra nu) kan du bruge en erklæring som denne: < Application. OnTime Now + TimeValue ("00: 20: 00"), "DisplayAlarm"

Du kan også bruge OnTime-metoden til at køre en VBA-procedure på en bestemt dag. Du skal sørge for, at din computer holder kørende, og at arbejdsbogen med proceduren holdes åben. Følgende sætning kører DisplayAlarm-proceduren på 5 s. m. 31. december 2016:

Ansøgning. OnTime DateValue ("12/31/2016 5: 00 pm"), "DisplayAlarm"

Denne særlige kode linje kan komme til nytte for at advare dig om at du skal hjem og gør dig klar til nytårsaften.

Her er et andet eksempel, der bruger OnTime-arrangementet. Udførelse af UpdateClock-procedurerne skriver tiden til celle A1 og programmerer også en anden begivenhed fem sekunder senere.Denne begivenhed genopretter UpdateClock-proceduren. Nettoeffekten er, at celle A1 opdateres med den aktuelle tid hvert femte sekund. For at stoppe begivenhederne, udfør StopClock-proceduren (som annullerer arrangementet). Bemærk, at NextTick er en variabel på modulniveau, der lagrer tidspunktet for den næste begivenhed.

Dim NextTick som Date Sub UpdateClock () 'Opdaterer celle A1 med den aktuelle tid ThisWorkbook. Ark (1). Range ("A1") = Tid 'Indstil næste hændelse fem sekunder fra nu NextTick = Nu + TimeValue ("00: 00: 05") Application. OnTime NextTick, "UpdateClock" End Sub Sub StopClock () 'Annullerer OnTime-hændelsen (stopper uret) På fejl Fortsæt næste program. OnTime NextTick, "UpdateClock", False End Sub

OnTime-arrangementet fortsætter, selv efter at projektmappen er lukket. Med andre ord, hvis du lukker projektmappen uden at køre StopClock-proceduren, genoptages projektmappen om fem sekunder (forudsat at Excel stadig kører). For at forhindre dette skal du bruge en Workbook_BeforeClose hændelsesprocedure, der indeholder følgende sætning:

Opkalds StopClock

OnTime-metoden har to yderligere argumenter. Hvis du planlægger at bruge denne metode, skal du henvise til Hjælp-systemet for at få fuldstændige detaljer.

Hvis du vil se et ret kompliceret program, skal du tjekke denne analoge urapplikation. Uret ansigt er faktisk et diagram, og diagrammet opdateres hvert sekund for at vise tidspunktet på dagen. Useless, men sjovt.

En analog ur-applikation.

Keypress events

Mens du arbejder, overvåger Excel konstant, hvad du skriver. På grund af dette kan du indstille ting, så et tastetryk eller en nøglekombination udfører en procedure.

Her er et eksempel, der overfører PgDn og PgUp nøglerne:

Sub Setup_OnKey () Application. OnKey "{PgDn}", "PgDn_Sub" Application. OnKey "{PgUp}", "PgUp_Sub" End Sub Sub PgDn_Sub () På Fejl Genoptag Næste ActiveCell. Forskydning (1, 0). Aktivér End Sub Sub PgUp_Sub () På Fejl Genoptag Næste ActiveCell. Forskydning (-1, 0). Aktiver slutdel

Når du har konfigureret OnKey-begivenhederne ved at udføre Setup_OnKey-proceduren, bevæger du PgDn dig ned en række. Ved at trykke på PgUp flyttes du op en række.

Bemærk, at nøglekoderne er vedlagt i seler, ikke i parentes. For en komplet liste over tastaturkoder henvises til hjælpesystemet. Søg efter

OnKey. I dette eksempel bruges On Error Resume Next til at ignorere eventuelle fejl, der genereres. Hvis den aktive celle er i den første række, vil forsøget med at flytte op en række forårsage en fejl, der sikkert kan ignoreres. Og hvis et diagramark er aktivt, er der ingen aktiv celle.

Ved at udføre følgende rutine annullerer du OnKey-begivenhederne:

Sub Cancel_OnKey () Applikation. OnKey "{PgDn}" ansøgning. OnKey "{PgUp}" End Sub

Afbryder OnKey-begivenheden ved at bruge en tom streng som andet argument for OnKey-metoden

ikke . Det forårsager snarere, at Excel simpelthen ignorerer tastetrykket. F.eks. Fortæller følgende sætning, at Excel ignorerer Alt + F4. Procenttegnet repræsenterer Alt-tasten: Program.OnKey "% {F4}", ""

Selvom du kan bruge OnKey-metoden til at tildele en genvejstast til udførelse af en makro, skal du bruge dialogboksen Makroindstillinger til denne opgave.

Hvis du lukker arbejdsbogen, der indeholder koden, og lad Excel være åben, vil OnKey-metoden ikke blive nulstillet. Som følge heraf vil trykke på genvejstasten få Excel til automatisk at åbne filen med makroen. For at forhindre dette sker, skal du medtage kode i din Workbook_BeforeClose-begivenhedskode for at nulstille OnKey-arrangementet.

Sådan bruges OnTime Events og Keypress Events i Excel 2016 VBA - dummies

Valg af editor

Sådan indtastes aftaler i Outlook 2013 Kalender - dummies

Sådan indtastes aftaler i Outlook 2013 Kalender - dummies

Aftaler du har sat op til arbejde i Outlook 2013 Kalender kræver ofte, at du indeholder lidt mere information, end du ville have brug for til dine personlige aftaler. Når du vil give en aftale den fulde behandling, skal du bruge følgende metode:

Hvordan man indtaster kalenderaftaler fra Outlook. com - dummies

Hvordan man indtaster kalenderaftaler fra Outlook. com - dummies

De aftaler og møder, du sender i Outlook, er knyttet til Outlook. com, så fra enhver web-aktiveret enhed kan du se, hvor du skal være og med hvem. Nu ved du, hvornår du er tilgængelig til møder, frokoster og tilfældige tungevæsker. Hvis du vil have dine Outlook 2013-data og din Outlook. com data til synkronisering automatisk, ...

Sådan flagger du en kontakt i Outlook 2013 - dummies

Sådan flagger du en kontakt i Outlook 2013 - dummies

Nogle gange har du brug for Outlook 2013 for at minde dig om vigtig datoer eller opfølgningsaktiviteter. Du kan f.eks. Bruge flag, for at minde dig om at ringe til nogen næste uge. Den bedste måde at hjælpe dig med at huske på er at markere personens navn i listen Kontaktpersoner. En påmindelse vil dukke op i din kalender. Kontakterne er ikke ...

Valg af editor

LinkedIn Group Kategorier - dummies

LinkedIn Group Kategorier - dummies

Fordi der er mange grunde til at oprette en gruppe, giver LinkedIn dig muligheder for at kategorisere din gruppe for at give dig mest eksponering. LinkedIn har etableret følgende seks hovedkategorier af grupper: Alumni: Disse grupper er alumniforeninger skabt af skoler eller lærerinstitutioner som et middel til at holde kontakten med fortiden ...

LinkedIn: Sådan oprettes en eksportfil til eksportkontakter - dummier

LinkedIn: Sådan oprettes en eksportfil til eksportkontakter - dummier

Der kommer nok en tid du har brug for dine LinkedIn kontakter for at hjælpe dig på andre arenaer, hvis du vil lykkes i din jobsøgning. For det første skal du generere din eksporterede fil af kontakter fra LinkedIn. Det gør du ved at følge disse trin:

LinkedIn For Dummies Cheat Sheet - dummies

LinkedIn For Dummies Cheat Sheet - dummies

Tilmelding til LinkedIn betyder, at du er en del af det største online faglige netværk i verden. Se her for nyttige retningslinjer for brug af LinkedIn, især når du søger job. LinkedIn hjælper dig med at oprette og vedligeholde en online profil, du kan bruge til at opbygge et professionelt netværk.

Valg af editor

Windows Phone 7 Application Development For Dummies Cheat Sheet - dummies

Windows Phone 7 Application Development For Dummies Cheat Sheet - dummies

Hvis du har en god Ny ide til en app, der vil køre på Windows Phone 7, start med at downloade de gratis Windows Phone Developer Tools fra Microsofts websted. Processen tager et kig på, hvad du har på din pc, før det begynder at downloade - hvis du allerede har en bedre version ...

Hvorfor udvikle til Android? - dummies

Hvorfor udvikle til Android? - dummies

Det virkelige spørgsmål er, "Hvorfor ikke udvikle til Android? "Hvis du vil have din app tilgængelig for millioner af brugere over hele verden, eller hvis du vil offentliggøre apps, så snart du er færdig med at skrive og teste dem, eller hvis du kan lide at udvikle på en åben platform, har du dit svar. Men hvis du er ...

Arbejder med objektgrafer i storyboarding - dummies

Arbejder med objektgrafer i storyboarding - dummies

Du kan bruge storyboarding til at starte din iOS-applikationsudvikling i Xcode4. Når du opretter dit storyboard, opretter du en objektgraf, der derefter arkiveres, når du gemmer filen. Når du indlæser filen, er objektgrafen unarchived. Så hvad er en objekgraf? Her er det korte svar: Objektorienterede programmer er lavet ...