Shembuj të Excel VBA: Shembuj të ngjarjeve hyrëse

Nëse po përpiqeni të kuptoni mirë Excel VBA , ndoshta mund të përfitoni nga disa shembuj për të zhvilluar atë aftësi bazë vizuale. Këtu, ju gjeni disa shembuj Excel VBA, në mënyrë që të mund të përfitoni nga ky biznes i trajtimit të ngjarjeve.

Shembull Excel VBA: Ngjarja e hapur për një libër pune

Një nga ngjarjet më të përdorura të Excel VBA është ngjarja e Workbook Open. Supozoni se keni një libër pune që e përdorni çdo ditë. Procedura Workbook_Open në këtë shembull ekzekutohet sa herë që hapet libri i punës. Procedura kontrollon ditën e javës; nëse është e premte, kodi shfaq një mesazh rikujtues për ju.

Për të krijuar procedurën Excel VBA që ekzekutohet sa herë që ndodh ngjarja Openbook Workbook, ndiqni këto hapa:

Hapni librin e punës në Excel.
Çdo libër pune në Excel do të funksionojë.

Shtypni Alt+F11 për të aktivizuar VBE.

Gjeni librin e punës në dritaren e Projektit.

Klikoni dy herë mbi emrin e projektit për të shfaqur artikujt e tij, nëse është e nevojshme.

Klikoni dy herë mbi artikullin ThisWorkbook.
VBE shfaq një dritare të zbrazët të Kodit për objektin ThisWorkbook.

Në dritaren e Kodit, zgjidhni Workbook nga lista rënëse Object (majtas).
VBE fut deklaratat e fillimit dhe të përfundimit për një procedurë Workbook_Open.

Futni deklaratat e mëposhtme, kështu që procedura e plotë e ngjarjes duket si kjo:

Nën-libër pune privat_Open()
  Dim Msg As String
  Nëse Dita e javës (Tani) = 6 Atëherë
    Msg = "Sot është e premte. Mos harroni të "
    Msg = Msg & "paraqit Raportin TPS!"
    MsgBox Msg
  Fundi Nëse
Fundi Nën

Dritarja e Kodit duhet të duket kështu.

Shembuj të Excel VBA: Shembuj të ngjarjeve hyrëse

Kjo procedurë e mbajtësit të ngjarjeve ekzekutohet kur hapet libri i punës.

Workbook_Open ekzekutohet automatikisht sa herë që hapet libri i punës. Ai përdor funksionin WeekDay të VBA për të përcaktuar ditën e javës. Nëse është e premte (dita 6), një kuti mesazhi i kujton përdoruesit të dorëzojë një raport. Nëse nuk është e premte, asgjë nuk ndodh.

Nëse sot nuk është e premte, mund ta keni të vështirë ta provoni këtë procedurë. Ju thjesht mund të ndryshoni numrin 6 që të korrespondojë me numrin aktual të ditës së sotme.

Dhe sigurisht, ju mund ta modifikoni këtë procedurë si të dëshironi. Për shembull, versioni i mëposhtëm shfaq një mesazh sa herë që hapet libri i punës. Kjo bëhet e bezdisshme pas një kohe.

Një procedurë Workbook_Open mund të bëjë pothuajse çdo gjë. Këta mbajtës ngjarjesh përdoren shpesh për sa vijon:

  • Shfaqja e mesazheve të mirëseardhjes (si p.sh. në librin e mirë të punës të Frank)
  • Hapja e librave të tjerë të punës
  • Aktivizimi i një flete të caktuar pune në librin e punës
  • Konfigurimi i menuve të shkurtoreve të personalizuara

Këtu është një shembull përfundimtar i Excel VBA i një procedure Workbook_Open që përdor funksionet GetSetting dhe SaveSetting për të mbajtur shënim se sa herë është hapur libri i punës. Funksioni SaveSetting shkruan një vlerë në regjistrin e Windows dhe funksioni GetSetting e merr atë vlerë (shih sistemin e ndihmës për detaje). Shembulli i mëposhtëm i Excel VBA e merr numërimin nga regjistri, e rrit atë dhe më pas e ruan përsëri në regjistër. Ai gjithashtu i tregon përdoruesit vlerën e Cnt që korrespondon me numrin e herëve që është hapur libri i punës.

Nën-libër pune privat_Open()
  Dim Cnt Për aq kohë sa
  Cnt = GetSetting ("MyApp", "Cilësimet", "Open", 0)
  Cnt = Cnt + 1
  SaveSetting "MyApp", "Settings", "Open", Cnt
  MsgBox "Ky libër pune është hapur " & Cnt & " herë."
Fundi Nën

Shembuj të Excel VBA: Shembuj të ngjarjeve hyrëse

Përdorimi i një trajtuesi të ngjarjeve Workbook_Open për të mbajtur shënim se sa herë është hapur një libër pune.

Shembull Excel VBA: Ngjarja BeforeClose për një libër pune

Këtu është një shembull i procedurës së trajtuesit të ngjarjeve të Excel VBA Workbook_BeforeClose, e cila ekzekutohet automatikisht menjëherë përpara se të mbyllet libri i punës. Kjo procedurë ndodhet në dritaren e Kodit për një objekt ThisWorkbook:

Nën-libër pune privat_BeforeClose (Anulo si Boolean)
  Dim Msg As String
  Dim Ans Sa Long
  Dim FName si varg
  Msg = "Dëshironi të bëni një kopje rezervë të këtij skedari?"
  Përgjigje = MsgBox (Msg, vbPo Jo)
  Nëse Ans = vbPo Atëherë
    FName = "F:\BACKUP\" & This Workbook.Name
    ThisWorkbook.SaveCopyAs FName
  Fundi Nëse
Fundi Nën

Kjo rutinë përdor një kuti mesazhesh për të pyetur përdoruesin nëse dëshiron të bëjë një kopje rezervë të librit të punës. Nëse përgjigja është po, kodi përdor metodën SaveCopyAs për të ruajtur një kopje rezervë të skedarit në diskun F. Nëse e përshtatni këtë procedurë për përdorimin tuaj, duhet të ndryshoni diskun dhe shtegun.

Programuesit e Excel shpesh përdorin një procedurë Workbook_BeforeClose për të pastruar veten. Për shembull, nëse përdorni një procedurë Workbook_Open për të ndryshuar disa cilësime kur hapni një libër pune (duke fshehur shiritin e statusit, për shembull), është e përshtatshme që t'i ktheni cilësimet në gjendjen e tyre origjinale kur mbyllni librin e punës. Ju mund ta kryeni këtë ruajtje elektronike me një procedurë Workbook_BeforeClose.

Kur përdorni ngjarjen Workbook_BeforeClose, mbani parasysh këtë: Nëse mbyllni Excel dhe çdo skedar i hapur është ndryshuar që nga ruajtja e fundit, Excel shfaq kutinë e zakonshme të mesazhit "A doni të ruani ndryshimet tuaja". Klikimi i butonit Anulo anulon të gjithë procesin e mbylljes. Por ngjarja Workbook_BeforeClose do të jetë ekzekutuar gjithsesi.

Shembull Excel VBA: Ngjarja BeforeSave për një libër pune

Ngjarja BeforeSave, siç nënkupton edhe emri i saj, aktivizohet përpara se të ruhet një libër pune. Kjo ngjarje ndodh kur zgjidhni Skedar → Ruaj ose Skedar → Ruaj si.

Procedura e mëposhtme, e cila vendoset në dritaren e Kodit për një objekt ThisWorkbook, demonstron ngjarjen BeforeSave. Rutina përditëson vlerën në një qelizë (qeliza A1 në Fletën1) sa herë që ruhet libri i punës. Me fjalë të tjera, qeliza A1 shërben si një numërues për të mbajtur gjurmët e numrit të herëve që skedari është ruajtur.

Nën-libër pune privat_ParaSave(ByVal SaveAsUI _
  Si Boolean, Anulo si Boolean)
  Numëruesi i zbehtë si varg
  Set Counter = Fletë ("Fletë1"). Gama ("A1")
  Counter.Value = Counter.Vlera + 1
Fundi Nën

Vini re se procedura e Workbook_BeforeSave ka dy argumente: SaveAsUI dhe Cancel. Për të demonstruar se si funksionojnë këto argumente, shqyrtoni makronë e mëposhtme, e cila ekzekutohet përpara se të ruhet libri i punës. Kjo procedurë përpiqet të parandalojë përdoruesin të ruajë librin e punës me një emër tjetër. Nëse përdoruesi zgjedh Skedar → Ruaj si, argumenti SaveAsUI është i vërtetë.

Kur kodi ekzekutohet, ai kontrollon vlerën SaveAsUI. Nëse kjo variabël është e vërtetë, procedura shfaq një mesazh dhe vendos Cancel në True, e cila anulon operacionin Save.

Nën-libër pune privat_ParaSave(ByVal SaveAsUI _
  Si Boolean, Anulo si Boolean)
  Nëse SaveAsUI Atëherë
    MsgBox "Nuk mund të ruash një kopje të këtij libri pune!"
  Anulo = E vërtetë
  Fundi Nëse
Fundi Nën

Vini re se kjo procedurë nuk do të pengojë askënd që të ruajë një kopje me një emër tjetër. Nëse dikush me të vërtetë dëshiron ta bëjë këtë, ai ose ajo thjesht mund të hapë librin e punës me makro të çaktivizuara. Kur makro-të çaktivizohen, procedurat e menaxhimit të ngjarjeve janë gjithashtu të çaktivizuara, gjë që ka kuptim sepse ato janë, në fund të fundit, makro.

Leave a Comment

Si të shkruani shënime në OneNote 2013 në Android

Si të shkruani shënime në OneNote 2013 në Android

Mësoni si të shkruani shënime në OneNote 2013 në Android me krijimin, hapjen dhe regjistrimin e shënimeve. Aplikoni strategji efektive për menaxhimin e shënimeve tuaja.

Formatimi i numrave në një varg teksti në Excel

Formatimi i numrave në një varg teksti në Excel

Mësoni si të formatoni numrat në një varg teksti në Excel për të përfshirë informacione të sakta dhe tërheqëse për raportet tuaja.

Si të fshini qelizat dhe të dhënat në Excel 2010

Si të fshini qelizat dhe të dhënat në Excel 2010

Në Excel 2010, fshini të dhënat apo formatin e qelizave lehtësisht me disa metoda të thjeshta. Mësoni si të menaxhoni përmbajtjen e qelizave me opsione të ndryshme.

Formatimi i elementeve të grafikut të Excel 2007

Formatimi i elementeve të grafikut të Excel 2007

Zhvilloni aftësitë tuaja në formatimin e elementeve të grafikut në Excel 2007 përmes metodave të thjeshta dhe efikase.

Si të rreshtoni dhe justifikoni tekstin në Word 2010

Si të rreshtoni dhe justifikoni tekstin në Word 2010

Mësoni se si të rreshtoni dhe justifikoni tekstin në Word 2010 me opsione të ndryshme rreshtimi dhe justifikimi për të përmirësuar formatimin e dokumenteve tuaja.

Excel 2019: Si të krijoni makro Excel për të automatizuar komandat

Excel 2019: Si të krijoni makro Excel për të automatizuar komandat

Mësoni si të krijoni makro në Excel 2019 për të automatizuar komandat dhe thjeshtuar detyrat tuaja.

Si të përdorni vizoren për të vendosur skeda në Word 2016

Si të përdorni vizoren për të vendosur skeda në Word 2016

Mënyra vizuale dhe e shpejtë për të vendosur një ndalesë skedash në Word 2016 është përdorimi i vizores. Zbulo disa këshilla dhe truke për përdorimin e skedave në këtë program.

Formatimi i boshtit X dhe boshtit Y në grafikët e Excel 2007

Formatimi i boshtit X dhe boshtit Y në grafikët e Excel 2007

Mësoni si të formula boshtet X dhe Y në Excel 2007, duke përfshirë mundësitë e ndryshimit të formatimeve për grafikët e ndryshëm.

Statistika të thjeshta në analizën e të dhënave në Excel

Statistika të thjeshta në analizën e të dhënave në Excel

Eksploroni se si Excel mund t

Gjetja dhe zëvendësimi i të dhënave në Excel 2007

Gjetja dhe zëvendësimi i të dhënave në Excel 2007

Mësoni se si të përdorni veçorinë Find and Replace të Excel 2007 për të gjetur dhe zëvendësuar të dhëna në mënyrë efikase. Kjo udhëzues është e përshtatshme për të gjithë përdoruesit që dëshirojnë të rrisin produktivitetin e tyre.