Primeri Excel VBA: primeri uvodnih dogodkov

Če poskušate dobro razumeti Excel VBA , bi vam verjetno lahko koristilo nekaj primerov za razvoj te vizualne osnovne sposobnosti. Tukaj najdete nekaj primerov Excel VBA, da se boste lahko navadili na to podjetje z obravnavo dogodkov.

Primer Excel VBA: dogodek Odpri za delovni zvezek

Eden najpogosteje uporabljenih dogodkov Excel VBA je dogodek Open Workbook. Predpostavimo, da imate delovni zvezek, ki ga uporabljate vsak dan. Postopek Workbook_Open v tem primeru se izvede vsakič, ko odprete delovni zvezek. Postopek preverja dan v tednu; če je petek, vam koda prikaže sporočilo z opomnikom.

Če želite ustvariti Excelov postopek VBA, ki se izvede vsakič, ko pride do dogodka Odpiranje delovnega zvezka, sledite tem korakom:

Odprite Excelov delovni zvezek.
Vsak Excelov delovni zvezek bo primeren.

Pritisnite Alt+F11, da aktivirate VBE.

Poiščite delovni zvezek v oknu Projekt.

Če je potrebno, dvokliknite ime projekta, da prikažete njegove elemente.

Dvokliknite element ThisWorkbook.
VBE prikaže prazno okno kode za objekt ThisWorkbook.

V oknu Koda izberite Delovni zvezek s spustnega seznama Objekt (levo).
VBE vnese začetne in končne stavke za proceduro Workbook_Open.

Vnesite naslednje izjave, tako da bo celoten postopek dogodka videti tako:

Zasebni delovni zvezek_Open()
  Zatemni sporočilo kot niz
  Če je dan v tednu (zdaj) = 6 Potem
    Msg = "Danes je petek. Ne pozabite"
    Sporočilo = Sporočilo & "pošlji poročilo TPS!"
    MsgBox Msg
  Konec Če
Končni sub

Okno kode bi moralo izgledati takole.

Primeri Excel VBA: primeri uvodnih dogodkov

Ta postopek za obravnavo dogodkov se izvede, ko se odpre delovni zvezek.

Workbook_Open se izvede samodejno vsakič, ko se odpre delovni zvezek. Za določitev dneva v tednu uporablja funkcijo WeekDay VBA. Če je petek (6. dan), okence s sporočilom uporabnika opomni, naj predloži poročilo. Če ni petek, se ne zgodi nič.

Če danes ni petek, boste morda težko preizkusili ta postopek. Lahko samo spremenite 6, da ustreza današnji dejanski številki dneva.

In seveda lahko ta postopek spremenite na poljuben način. Naslednja različica na primer prikaže sporočilo vsakič, ko odprete delovni zvezek. To postane moteče čez nekaj časa.

Postopek Workbook_Open lahko naredi skoraj vse. Ti obdelovalci dogodkov se pogosto uporabljajo za naslednje:

  • Prikazovanje pozdravnih sporočil (na primer v Frankovem kul delovnem zvezku)
  • Odpiranje drugih delovnih zvezkov
  • Aktiviranje določenega delovnega lista v delovnem zvezku
  • Nastavitev bližnjičnih menijev po meri

Tukaj je zadnji primer Excel VBA postopka Workbook_Open, ki uporablja funkciji GetSetting in SaveSetting za spremljanje, kolikokrat je bil delovni zvezek odprt. Funkcija SaveSetting zapiše vrednost v register Windows, funkcija GetSetting pa pridobi to vrednost (za podrobnosti glejte sistem pomoči). Naslednji primer Excel VBA pridobi štetje iz registra, ga poveča in nato shrani nazaj v register. Uporabniku tudi pove vrednost Cnt, ki ustreza številu, kolikokrat je bil delovni zvezek odprt.

Zasebni delovni zvezek_Open()
  Dim Cnt As Long
  Cnt = GetSetting("MyApp", "Settings", "Open", 0)
  Cnt = Cnt + 1
  SaveSetting "MyApp", "Settings", "Open", Cnt
  MsgBox "Ta delovni zvezek je bil odprt " & Cnt & " krat."
Končni sub

Primeri Excel VBA: primeri uvodnih dogodkov

Uporaba obdelovalca dogodkov Workbook_Open za spremljanje, kolikokrat je bil delovni zvezek odprt.

Primer Excel VBA: dogodek BeforeClose za delovni zvezek

Tukaj je primer postopka za obravnavo dogodkov Excel VBA Workbook_BeforeClose, ki se izvede samodejno tik pred zaprtjem delovnega zvezka. Ta postopek se nahaja v oknu kode za predmet ThisWorkbook:

Private Sub Workbook_BeforeClose(Prekliči kot Boolean)
  Zatemni sporočilo kot niz
  Dim Ans As Long
  Dim FName kot niz
  Msg = "Ali želite narediti varnostno kopijo te datoteke?"
  Ans = MsgBox(Msg, vbYesNo)
  Če Ans = vbYes Potem
    FName = "F:\BACKUP\" & ThisWorkbook.Name
    Ta delovni zvezek.SaveCopyAs FName
  Konec Če
Končni sub

Ta rutina uporablja polje za sporočilo, da vpraša uporabnika, ali želi narediti varnostno kopijo delovnega zvezka. Če je odgovor pritrdilen, koda uporablja metodo SaveCopyAs, da shrani varnostno kopijo datoteke na pogon F. Če ta postopek prilagodite za lastno uporabo, morate spremeniti pogon in pot.

Excelovi programerji pogosto uporabljajo postopek Workbook_BeforeClose, da počistijo za seboj. Če na primer uporabite postopek Workbook_Open za spreminjanje nekaterih nastavitev, ko odprete delovni zvezek (na primer skrijete vrstico stanja), je primerno le, da nastavitve vrnete v prvotno stanje, ko zaprete delovni zvezek. To elektronsko gospodinjstvo lahko izvedete s postopkom Workbook_BeforeClose.

Ko uporabljate dogodek Workbook_BeforeClose, upoštevajte to: Če zaprete Excel in je bila katera koli odprta datoteka spremenjena od zadnjega shranjevanja, Excel prikaže svoje običajno sporočilo »Ali želite shraniti spremembe«. S klikom na gumb Prekliči prekličete celoten postopek zapiranja. Toda dogodek Workbook_BeforeClose bo vseeno izveden.

Primer Excel VBA: dogodek Pred Shrani za delovni zvezek

Dogodek BeforeSave, kot pove njegovo ime, se sproži, preden se delovni zvezek shrani. Ta dogodek se zgodi, ko izberete Datoteka → Shrani ali Datoteka → Shrani kot.

Naslednji postopek, ki je postavljen v okno Code za predmet ThisWorkbook, prikazuje dogodek PreSave. Rutina posodobi vrednost v celici (celica A1 na listu1) vsakič, ko je delovni zvezek shranjen. Z drugimi besedami, celica A1 služi kot števec za sledenje, kolikokrat je bila datoteka shranjena.

Delovni zvezek zasebnega podpora_pred shranjevanjem(ByVal SaveAsUI _
  Kot Boolean, Prekliči kot Boolean)
  Dim Counter As Range
  Nastavi števec = Listi("List1").Razpon("A1")
  Counter.Value = Counter.Value + 1
Končni sub

Upoštevajte, da ima postopek Workbook_BeforeSave dva argumenta: SaveAsUI in Cancel. Če želite pokazati, kako ti argumenti delujejo, preglejte naslednji makro, ki se izvede, preden se delovni zvezek shrani. Ta postopek poskuša uporabniku preprečiti, da bi shranil delovni zvezek z drugim imenom. Če uporabnik izbere Datoteka → Shrani kot, je argument SaveAsUI True.

Ko se koda izvede, preveri vrednost SaveAsUI. Če je ta spremenljivka True, postopek prikaže sporočilo in nastavi Prekliči na True, kar prekliče operacijo Shrani.

Delovni zvezek zasebnega podpora_pred shranjevanjem(ByVal SaveAsUI _
  Kot Boolean, Prekliči kot Boolean)
  Če SaveAsUI Potem
    MsgBox "Ne morete shraniti kopije tega delovnega zvezka!"
  Prekliči = Res
  Konec Če
Končni sub

Upoštevajte, da ta postopek v resnici nikomur ne bo preprečil, da bi shranil kopijo z drugim imenom. Če nekdo to res želi narediti, lahko preprosto odpre delovni zvezek z onemogočenimi makri. Ko so makri onemogočeni, so onemogočeni tudi postopki za obravnavo dogodkov, kar je smiselno, ker so navsezadnje makri.

Leave a Comment

Kako dokazati besedilo v tujem jeziku v Wordu 2016

Kako dokazati besedilo v tujem jeziku v Wordu 2016

V interesu kozmopolitizma vam Word 2016 omogoča delo s tujimi jeziki. Naučite se, kako vnesti in urediti besedilo v tujem jeziku, ter preveriti črkovanje in slovnico.

Filtriranje in razvrščanje podatkov vrtilne tabele v Excelu 2019

Filtriranje in razvrščanje podatkov vrtilne tabele v Excelu 2019

Učinkovito filtriranje in razvrščanje podatkov v vrtilni tabeli Excel 2019 za boljša poročila. Dosežite hitrejše analize z našimi namigi in triki!

Kaj pomenijo sporočila o napakah reševalca v Excelu?

Kaj pomenijo sporočila o napakah reševalca v Excelu?

Reševalec v Excelu je močno orodje za optimizacijo, ki lahko naleti na težave. Razumevanje sporočil o napakah reševalca vam lahko pomaga rešiti težave in optimizirati vaše matematične modele.

Teme za PowerPoint 2019

Teme za PowerPoint 2019

Odkrijte različne <strong>teme PowerPoint 2019</strong> in kako jih lahko uporabite za izboljšanje vaših predstavitev. Izberite najboljšo temo za vaše diapozitive.

Kako uporabljati distribucije hi-kvadrat v Excelu

Kako uporabljati distribucije hi-kvadrat v Excelu

Nekateri statistični ukrepi v Excelu so lahko zelo zmedeni, vendar so funkcije hi-kvadrat res praktične. Preberite vse opise funkcij hi-kvadrat za bolje razumevanje statističnih orodij.

Kako dodati obrobo strani v Word 2013

Kako dodati obrobo strani v Word 2013

V tem članku se naučite, kako dodati <strong>obrobo strani</strong> v Word 2013, vključno z različnimi slogi in tehnikami za izboljšanje videza vaših dokumentov.

Kako delati z več dokumenti v Wordu 2013

Kako delati z več dokumenti v Wordu 2013

Ni vam treba omejiti uporabe urejevalnika besedil na delo z enim samim dokumentom. Učinkovito delajte z več dokumenti v Wordu 2013.

Kako dodati komentarje v predstavitev PowerPoint 2013

Kako dodati komentarje v predstavitev PowerPoint 2013

Sodelovanje pri predstavitvi, ustvarjeni v PowerPointu 2013, je lahko tako preprosto kot dodajanje komentarjev. Odkrijte, kako učinkovito uporabljati komentarje za izboljšanje vaših predstavitev.

Kako spremeniti nastavitve preverjanja črkovanja in slovnice v Wordu 2016

Kako spremeniti nastavitve preverjanja črkovanja in slovnice v Wordu 2016

Ugotovite, kako prilagoditi nastavitve preverjanja črkovanja in slovnice v Wordu 2016, da izboljšate svoje jezikovne sposobnosti.

Kaj so izročki v PowerPointu 2013?

Kaj so izročki v PowerPointu 2013?

PowerPoint 2013 vam ponuja različne načine za izvedbo predstavitve, vključno s tiskanjem izročkov. Izročki so ključnega pomena za izboljšanje vaše predstavitve.