Kā izmantot OnTime notikumus un taustiņu nospiešanas notikumus programmā Excel 2016 VBA

Programmai Excel 2016 VBA programmēšanā varat izmantot divu veidu notikumus, kas nav saistīti ar objektiem: laiks un taustiņu nospiešanas. Tā kā laiks un taustiņu nospiešanas nav saistīti ar noteiktu objektu, piemēram, darbgrāmatu vai darblapu, jūs ieprogrammējat šos notikumus parastā VBA modulī.

Pasākums OnTime

Notikums OnTime notiek, kad notiek noteikts diennakts laiks. Nākamajā piemērā ir parādīts, kā panākt, lai programma Excel izpildītu procedūru, kad notiek pulksten 15.00 notikums. Šajā gadījumā robota balss liek jums pamosties, un to pavada ziņojuma lodziņš:

Sub SetAlarm()
  Application.OnTime 0.625, “DisplayAlarm”
Beigu apakš
Sub DisplayAlarm()
  Lietojumprogramma.Runa.Runā (“Hei, mosties”)
  MsgBox “Ir pienācis laiks pēcpusdienas pārtraukumam!”
Beigu apakš

Šajā piemērā tiek izmantota lietojumprogrammas objekta OnTime metode. Šai metodei ir divi argumenti: laiks (0,625 vai 15:00) un apakšprocedūras nosaukums, kas jāizpilda, kad notiek laika notikums (DisplayAlarm).

Šī procedūra ir ļoti noderīga, ja mēdzat tā iegrimt savos darbos, ka aizmirstat par sanāksmēm un tikšanās reizēm. Vienkārši iestatiet OnTime notikumu, lai par sevi atgādinātu.

Lielākajai daļai cilvēku ir grūti iedomāties laiku Excel numerācijas sistēmā. Tāpēc, iespējams, vēlēsities izmantot funkciju VBA TimeValue, lai attēlotu laiku. TimeValue pārvērš virkni, kas izskatās pēc laika, vērtībā, ko programma Excel var apstrādāt. Šis paziņojums parāda vienkāršāku veidu, kā ieprogrammēt pasākumu pulksten 15:00:

Application.OnTime TimeValue (“15:00:00”), “DisplayAlarm”

Ja vēlaties ieplānot notikumu saistībā ar pašreizējo laiku (piemēram, 20 minūtes no šī brīža), varat izmantot šādu paziņojumu:

Application.OnTime Now + TimeValue ("00:20:00"), "DisplayAlarm"

Varat arī izmantot OnTime metodi, lai konkrētā dienā palaistu VBA procedūru. Jums jāpārliecinās, ka dators turpina darboties un darbgrāmata ar procedūru ir atvērta. Šis paziņojums palaiž DisplayAlarm procedūru 2016. gada 31. decembrī plkst. 17:00:

Application.OnTime DateValue (“31/12/2016 17:00”), “DisplayAlarm”

Šī konkrētā koda rindiņa varētu noderēt, lai brīdinātu, ka jādodas mājās un jāsagatavojas Vecgada vakara svētkiem.

Šeit ir vēl viens piemērs, kurā tiek izmantots OnTime notikums. Veicot UpdateClock procedūras, laiks tiek ierakstīts šūnā A1 un pēc piecām sekundēm tiek ieprogrammēts cits notikums. Šis notikums atkārtoti palaiž UpdateClock procedūru. Rezultāts ir tāds, ka šūna A1 tiek atjaunināta ar pašreizējo laiku ik pēc piecām sekundēm. Lai apturētu notikumus, izpildiet StopClock procedūru (kas atceļ notikumu). Ņemiet vērā, ka NextTick ir moduļa līmeņa mainīgais, kas saglabā laiku nākamajam notikumam.

Dim NextTick Kā datums
Sub UpdateClock()
Atjaunina šūnu A1 ar pašreizējo laiku
  ThisWorkbook.Sheets(1).Range(“A1”) = laiks
Iestatiet nākamo notikumu pēc piecām sekundēm no šī brīža
  NextTick = Tagad + TimeValue ("00:00:05")
  Application.OnTime NextTick, “UpdateClock”
Beigu apakš
Sub StopClock()
Atceļ OnTime notikumu (aptur pulksteni)
  Kļūdas gadījumā atsākt nākamo
  Application.OnTime NextTick, “UpdateClock”, , False
Beigu apakš

Notikums OnTime saglabājas pat pēc darbgrāmatas aizvēršanas. Citiem vārdiem sakot, ja aizverat darbgrāmatu, nepalaižot StopClock procedūru, darbgrāmata atkal tiks atvērta pēc piecām sekundēm (pieņemot, ka programma Excel joprojām darbojas). Lai to novērstu, izmantojiet Workbook_BeforeClose notikuma procedūru, kas satur šādu paziņojumu:

Zvaniet uz StopClock

OnTime metodei ir divi papildu argumenti. Ja plānojat izmantot šo metodi, pilnu informāciju skatiet palīdzības sistēmā.

Ja vēlaties redzēt diezgan sarežģītu lietojumprogrammu, pārbaudiet šo analogā pulksteņa lietojumprogrammu. Pulksteņa ciparnīca faktiski ir diagramma, un diagramma tiek atjaunināta katru sekundi, lai parādītu diennakts laiku. Bezjēdzīgi, bet jautri.

Kā izmantot OnTime notikumus un taustiņu nospiešanas notikumus programmā Excel 2016 VBA

Analogā pulksteņa lietojumprogramma.

Taustiņu nospiešanas pasākumi

Kamēr strādājat, programma Excel pastāvīgi uzrauga jūsu rakstīto. Šī iemesla dēļ varat iestatīt tā, lai taustiņsitiens vai taustiņu kombinācija izpildītu procedūru.

Tālāk ir sniegts piemērs, kurā tiek atkārtoti piešķirtas PgDn un PgUp atslēgas.

Apakšiestatīšana_OnKey()
  Application.OnKey “{PgDn}”, “PgDn_Sub”
  Application.OnKey “{PgUp}”, “PgUp_Sub”
Beigu apakš
Sub PgDn_Sub()
  Kļūdas gadījumā atsākt nākamo
  ActiveCell.Offset(1, 0).Aktivizēt
Beigu apakš
Sub PgUp_Sub()
  Kļūdas gadījumā atsākt nākamo
  ActiveCell.Offset(-1, 0).Aktivizēt
Beigu apakš

Pēc OnKey notikumu iestatīšanas, izpildot procedūru Setup_OnKey, nospiežot PgDn, jūs tiekat pārvietots par vienu rindu uz leju. Nospiežot PgUp, jūs tiekat pārvietots par vienu rindu uz augšu.

Ņemiet vērā, ka atslēgu kodi ir ievietoti iekavās, nevis iekavās. Pilnu tastatūras kodu sarakstu skatiet palīdzības sistēmā. Meklēt OnKey.

Šajā piemērā funkcija On Error Resume Next tiek izmantota, lai ignorētu visas ģenerētās kļūdas. Piemēram, ja aktīvā šūna atrodas pirmajā rindā, mēģinot pārvietoties par vienu rindu uz augšu, rodas kļūda, kuru var droši ignorēt. Un, ja diagrammas lapa ir aktīva, aktīvas šūnas nav.

Izpildot šādu rutīnu, jūs atceļat OnKey notikumus:

Sub Cancel_OnKey()
  Application.OnKey “{PgDn}”
  Application.OnKey “{PgUp}”
Beigu apakš

Izmantojot tukšu virkni kā otro argumentu OnKey metodei, OnKey notikums netiek atcelts. Drīzāk tas liek Excel vienkārši ignorēt taustiņu nospiešanu. Piemēram, šis paziņojums liek programmai Excel ignorēt Alt+F4. Procentu zīme apzīmē taustiņu Alt:

  Application.OnKey “%{F4}”, ““

Lai gan varat izmantot OnKey metodi, lai piešķirtu īsinājumtaustiņu makro izpildei, šim uzdevumam ir jāizmanto dialoglodziņš Makro opcijas.

Ja aizverat darbgrāmatu, kurā ir kods, un atstājat programmu Excel atvērtu, OnKey metode netiks atiestatīta. Tā rezultātā, nospiežot īsinājumtaustiņu, programma Excel automātiski atvērs failu ar makro. Lai tas nenotiktu, iekļaujiet kodu savā Workbook_BeforeClose notikuma kodā, lai atiestatītu OnKey notikumu.


Kā neļaut Microsoft Word atvērt failus tikai lasīšanas režīmā operētājsistēmā Windows

Kā neļaut Microsoft Word atvērt failus tikai lasīšanas režīmā operētājsistēmā Windows

Kā neļaut Microsoft Word atvērt failus tikai lasīšanas režīmā operētājsistēmā Windows Microsoft Word atver failus tikai lasīšanas režīmā, padarot tos neiespējamu rediģēt? Neuztraucieties, metodes ir norādītas zemāk

Kā novērst nepareizu Microsoft Word dokumentu drukāšanu

Kā novērst nepareizu Microsoft Word dokumentu drukāšanu

Kā labot kļūdas, drukājot nepareizus Microsoft Word dokumentus.Kļūdas Word dokumentu drukāšanā ar mainītiem fontiem, nekārtīgām rindkopām, trūkstoša teksta vai pazaudētu saturu ir diezgan izplatītas. Tomēr nevajag

Izdzēsiet pildspalvas un marķiera zīmējumus savos PowerPoint slaidos

Izdzēsiet pildspalvas un marķiera zīmējumus savos PowerPoint slaidos

Ja prezentācijas laikā esat izmantojis pildspalvu vai marķieri, lai zīmētu uz PowerPoint slaidiem, varat saglabāt zīmējumus nākamajai prezentācijai vai izdzēst tos, lai nākamajā reizē, kad to parādīsit, jūs sāktu ar tīriem PowerPoint slaidiem. Izpildiet šos norādījumus, lai dzēstu pildspalvas un marķiera zīmējumus: Līniju dzēšana pa vienai […]

Veidojiet bibliotēkas saturu programmā SharePoint 2010

Veidojiet bibliotēkas saturu programmā SharePoint 2010

Stilu bibliotēkā ir CSS faili, paplašināmās stila lapu valodas (XSL) faili un attēli, ko izmanto iepriekš definētas šablona lapas, lapu izkārtojumi un vadīklas programmā SharePoint 2010. Lai atrastu CSS failus publicēšanas vietnes stilu bibliotēkā: izvēlieties Vietnes darbības → Skatīt Viss vietnes saturs. Tiek parādīts vietnes saturs. Stila bibliotēka atrodas […]

Formatējiet skaitļus tūkstošos un miljonos Excel pārskatos

Formatējiet skaitļus tūkstošos un miljonos Excel pārskatos

Nepārsedziet savu auditoriju ar milzīgiem skaitļiem. Programmā Microsoft Excel varat uzlabot informācijas paneļu un pārskatu lasāmību, formatējot skaitļus tā, lai tie tiktu rādīti tūkstošos vai miljonos.

Kā koplietot un sekot līdzi SharePoint vietnēm

Kā koplietot un sekot līdzi SharePoint vietnēm

Uzziniet, kā izmantot SharePoints sociālo tīklu rīkus, kas ļauj indivīdiem un grupām sazināties, sadarboties, koplietot un sazināties.

Kā programmā Excel konvertēt datumus Juliana formātos

Kā programmā Excel konvertēt datumus Juliana formātos

Jūlija datumi ražošanas vidēs bieži tiek izmantoti kā laikspiedols un ātra atsauce partijas numuram. Šāda veida datuma kodēšana ļauj mazumtirgotājiem, patērētājiem un pakalpojumu aģentiem noteikt produkta izgatavošanas laiku un līdz ar to arī produkta vecumu. Jūlija datumi tiek izmantoti arī programmēšanā, militārajā jomā un astronomijā. Savādāk […]

Kā izveidot Access Web App

Kā izveidot Access Web App

Programmā Access 2016 varat izveidot tīmekļa lietotni. Kas tad vispār ir tīmekļa lietotne? Tīmeklis nozīmē, ka tas ir tiešsaistē, un lietotne ir tikai “lietojumprogrammas” saīsinājums. Pielāgota tīmekļa lietotne ir tiešsaistes datu bāzes lietojumprogramma, kurai var piekļūt no mākoņa, izmantojot pārlūkprogrammu. Jūs veidojat un uzturat tīmekļa lietotni darbvirsmas versijā […]

Ātrās palaišanas josla programmā SharePoint 2010

Ātrās palaišanas josla programmā SharePoint 2010

Lielākā daļa SharePoint 2010 lapu ātrās palaišanas joslā lapas kreisajā pusē parāda navigācijas saišu sarakstu. Ātrās palaišanas joslā tiek rādītas saites uz piedāvāto vietņu saturu, piemēram, sarakstiem, bibliotēkām, vietnēm un publicēšanas lapām. Ātrās palaišanas joslā ir divas ļoti svarīgas saites: Visa vietnes satura saite: […]

Ko nozīmē risinātāja kļūdu ziņojumi programmā Excel?

Ko nozīmē risinātāja kļūdu ziņojumi programmā Excel?

Vienkāršām problēmām risinātājs programmā Excel parasti ātri atrod optimālās Risinātāja mainīgā vērtības mērķa funkcijai. Taču dažos gadījumos Solver ir grūti atrast Solver mainīgā vērtības, kas optimizē mērķa funkciju. Šādos gadījumos Solver parasti parāda ziņojumu vai kļūdas ziņojumu, kurā aprakstīta vai apspriesta problēma, ko […]