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.

Leave a Comment

Kā pārvietoties Word 2007 tabulā

Kā pārvietoties Word 2007 tabulā

Uzziniet, kā efektīvi pārvietoties Word 2007 tabulā, izmantojot īsinājumtaustiņus un peles darbības, lai optimizētu savu darba plūsmu.

10 Excel funkcijas, kas jums patiešām būtu jāzina

10 Excel funkcijas, kas jums patiešām būtu jāzina

Šajā sarakstā ir iekļautas desmit populārākās Excel funkcijas, kas attiecas uz plašu vajadzību klāstu. Uzziniet, kā izmantot <strong>Excel funkcijas</strong> efektīvāk!

Papildu analīzes slāņu pievienošana jūsu Excel diagrammām

Papildu analīzes slāņu pievienošana jūsu Excel diagrammām

Uzziniet, kā pievienot papildu analīzes slāņus jūsu Excel diagrammām, lai uzlabotu vizualizāciju un sniegtu precīzākus datus. Šis raksts apraksta visas nepieciešamās darbības.

Kā izveidot rindkopas atkāpi programmā Word 2013

Kā izveidot rindkopas atkāpi programmā Word 2013

Uzziniet, kā iestatīt <strong>rindkopas atkāpi</strong> programmā Word 2013, lai uzlabotu dokumenta noformējumu un lasāmību.

Kā ievietot slejas Word 2010 dokumentā

Kā ievietot slejas Word 2010 dokumentā

Uzziniet, kā pareizi ievietot slejas programmā Word 2010, lai uzlabotu jūsu dokumentu formātu un struktūru.

Šūnu datu aizsardzība programmā Excel 2007

Šūnu datu aizsardzība programmā Excel 2007

Apsveriet iespēju aizsargāt Excel 2007 darblapu, lai izvairītos no neplānotām izmaiņām. Uzziniet, kā aizsargāt un atbloķēt šūnas, lai nodrošinātu datu integritāti.

PMT funkcija programmā Excel 2013

PMT funkcija programmā Excel 2013

Programmas Excel 2013 PMT funkcija aprēķina periodisko mūža rentes maksājumu. Šī funkcija ir būtiska hipotekāro kredītu maksājumu plānošanai.

Kā lietot t-test datu analīzes rīku programmā Excel

Kā lietot t-test datu analīzes rīku programmā Excel

Mācieties, kā veikt t-testus Excel programmā, izmantojot datus un aprakstot trīs t-testu veidus, kas noderēs jūsu datu analīzes procesā.

Kā filtrēt datu sarakstu programmā Excel 2016

Kā filtrēt datu sarakstu programmā Excel 2016

Uzziniet, kā filtrēt datu sarakstu programmā Excel 2016, lai ērti paslēptu nevēlamus ierakstus un strādātu tikai ar nepieciešamajiem datiem.

Kā pievienot datu etiķetes diagrammai programmā Excel 2007

Kā pievienot datu etiķetes diagrammai programmā Excel 2007

Uzziniet, kā vienkārši pievienot datu etiķetes diagrammai programmā Excel 2007. Palīdziet noteikt vērtības, kas tiek rādītas katrā datu punktā, izmantojot dažādas izvietošanas un formatēšanas iespējas.