Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
1. Pomocou premennej na úrovni modulu:
Toto je najjednoduchší prístup k globálnemu počítadlu, ktorý pretrváva počas relácie VBA (až kým nie je súbor Excel zatvorený).
`` `VBA
Možnosť výslovne
Súkromné počítadlo, pokiaľ dlho „deklarujte premennú počítadla
Sub inkrementCounter ()
počítadlo =počítadlo + 1
MSGbox „Hodnota počítadla:“ a počítadlo
Koncový
Sub resetCounter ()
počítadlo =0
MSGbox „Reset počítadla na 0“
Koncový
`` `
* `Option Explit`: To je rozhodujúce pre dobré postupy kódovania. Núti vás výslovne deklarovať všetky premenné.
* `súkromné pult tak dlho: Toto vyhlasuje premennú s názvom „Counter“ typu `Long` (dlhé celé číslo), ktoré dokáže držať väčšie čísla ako„ celé číslo “. Kľúčové slovo „Private“ je prístupným iba v rámci modulu, v ktorom je deklarovaný.
* `inkrementCounter` a` ResetCounter` podprogram: Tieto demonštrujú, ako sa zvýšiť a resetovať počítadlo.
2. Pomocou bunky pracovného hárka ako počítadla:
Táto metóda ukladá počítadlo v konkrétnej bunke na pracovnom liste. Počítadlo pretrváva, aj keď je Excel uzavretý a znovu otvorený (pokiaľ sa hodnota bunky nezmení manuálne).
`` `VBA
SubspratworksheetCounter ()
Dim WS ako pracovný hárok
Set ws =thorkbook.Sheets ("Sheet1") 'Zmeniť "hárok" na názov svojho hárku
Ws.Range ("A1"). Value =Ws.Range ("A1"). Hodnota + 1 'Zvýšenie počítadla v bunke A1
MSGbox „Hodnota počítadla:“ &ws.range ("A1"). Hodnota
Koncový
Sub ResetworksheetCounter ()
Dim WS ako pracovný hárok
Set ws =thorkbook.Sheets ("Sheet1") 'Zmeniť "hárok" na názov svojho hárku
ws.Range ("a1"). value =0
MSGbox „Reset počítadla na 0“
Koncový
`` `
* Tento prístup je perzistentnejší ako premenná na úrovni modulu, ale spolieha sa na konkrétnu bunku, a preto je menej čistý z čisto VBA perspektívy.
3. Použitie modulu triedy pre viac zapuzdrené počítadlo:
Toto je pokročilejší prístup, ktorý poskytuje lepšiu organizáciu a opakovane použiteľnosť. Modul triedy vytvorí vlastný objekt, ktorý zapuzdruje údaje a metódy počítadla.
`` `VBA
„V module triedy (napr. Pomenované„ countrytstvo “)
Možnosť výslovne
Súkromná kontrastály tak dlho
Verejný majetok získajte counter () tak dlho
CounterValue
Koncový majetok
Verejné sub -prírastky ()
counterValue =cultValue + 1
Koncový
Public subset ()
countryValue =0
Koncový
'V štandardnom module
Sub usecounterClass ()
Slabý mycounter ako protitlavosť
SET MYCOUNTER =nová countrytstvo
mycounter.increment
Debug.print „Hodnota počítadla:“ a mycounter.counter
mycounter.increment
Debug.print „Hodnota počítadla:“ a mycounter.counter
mycounter.Reset
Debug.print „Hodnota počítadla:“ a mycounter.counter
SET MYCOUNTER =Nič 'DÔLEŽITÉ:Uvoľnite objekt z pamäte
Koncový
`` `
* Výhody modulu triedy: Lepšia organizácia kódu, opakovane použiteľnosť (môžete vytvoriť viaceré protelové objekty) a skrytie údajov (`countryValue` je súkromná).
Výber správneho prístupu:
* premenná na úrovni modulu: Najjednoduchšie pre jediné dočasné počítadlo v rámci jednej relácie VBA.
* Cellset Cell: Najlepšie pre vytrvalosť počas relácií Excel, ale menej elegantné z hľadiska kódovania.
* modul triedy: Najlepšie pre zložité scenáre, viacnásobné počítadlá alebo ak potrebujete lepšiu organizáciu kódu a opakovane použiteľnosť. Toto je vo všeobecnosti odporúčaný prístup pre čokoľvek, čo je mimo veľmi jednoduchého počítadla.
Nezabudnite nahradiť „Sheet1“ `skutočným názvom vášho pracovného hárka, ak používate metódu bunkového hárka. Vyberte prístup, ktorý najlepšie vyhovuje vašim potrebám a štýlu kódovania. Pre väčšinu aplikácií nad rámec jednoduchých počítadiel sa dôrazne odporúča použitie modulu triedy pre lepšiu organizáciu a udržiavateľnosť.