Hodnota Pi je 3,14, gravitační tah Země je 9,8 m/s2, máte zájem o VBA atd. To vše jsou konstanty a nemění se.
Ve VBA můžete definovat proměnné, jejichž hodnotu nelze v programu změnit. Programátor VBA definuje tyto konstantní hodnoty sám v programu a používá je znovu a znovu.
Jak definovat konstantní hodnotu ve VBA?
Používáme klíčové slovo Constdeklarovat konstantu ve VBA.
Syntaxe deklarace konstantní proměnné ve VBA je:
[] Const jako =
[]: Specifikátor rozsahu je volitelný. Pokud chcete, zadejte rozsah konstanty (veřejný nebo soukromý), jinak ji nedeklarujte. Ve výchozím nastavení je rozsah konstanty soukromý. Zde si můžete přečíst o specifikátorech rozsahu.
Poznámka: Klíčové slovo Dim nikdy nepoužíváme k deklaraci konstanty ve VBA.
: Je to název konstantní proměnné.
: Typ konstanty. Například celé číslo, řetězec, datum atd.
: Hodnota konstantní proměnné.
Jednoduchý příklad konstantní proměnné je:
Const pí jako dvojnásobek = 3,14
Zde jsme deklarovali konstantní hodnotu pí v pojmenované proměnnépí. Nyní to můžeme použít pív našem programu. Hodnota bude vždy 3,14. Pokud se pokusíte změnit hodnotu konstantní proměnné, aplikace Excel VBA zobrazí chybovou zprávu.
Příklady konstantních proměnných VBA
Prostudujte si níže uvedený kód:
Const pi As Double = 3,14 Const rad As Double = 6371 Sub Earth () sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub Sub Mars () rad = 3389,5 sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub Sub
Zde jsme definovali dvě konstanty, pi a rad. Hodnota pí je 3,14 a rad je 6371, což je poloměr Země.
Když nyní spustíme první dílčí Zemi, funguje naprosto v pořádku a vytiskne povrch Země.
V dalším sub-Marsu jsme předefinovali konstantní rad, protože poloměr Marsu je jiný. Když spustíme tento program, zobrazí se chybová hláška „Přiřazení ke konstantě není povoleno".
Jak znovu inicializovat konstantu ve VBA
Jak jste viděli ve výše uvedeném příkladu, nemůžeme konstantě přiřadit nové hodnoty. Ano, nemůžete.
Pokud však stále potřebujete použít stejný název jako jinou pevnou hodnotu, použijte Constklíčové slovo před přiřazením.
Níže uvedený kód bude fungovat perfektně.
Const pi As Double = 3,14 Const rad As Double = 6371 Sub Earth () sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub Sub Mars () Const rad = 3389,5 sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub
Výše uvedený podprogram bude fungovat perfektně bez jakýchkoli chyb. Ale tento přístup nedoporučuji. Nejlepší způsob je identifikovat veřejné a soukromé konstanty a definovat je samostatně. A tím se dostáváme k dalšímu segmentu.
Veřejné a soukromé konstanty ve VBA
Jak jsme se dozvěděli ve výše uvedených příkladech, některé konstanty mohou být univerzální a některé se mohou u různých objektů lišit. Hodnota pí je pro celý vesmír konstantní, ale počet planet od velmi sluneční soustavy po sluneční soustavu a poloměr planet se liší planetu od planety.
Protože poloměr Země je konstantní pro ni, ne pro vesmír. Podobně v programech budou některé konstanty soukromé pro dílčí a moduly a některé budou veřejné konstanty pro celý projekt VBA. Vaším úkolem je identifikovat je a prohlásit jinak.
Vezměme si další příklad:
Public Const pi As Double = 3,14 'To je přístupné z jakéhokoli modulu v projektu Private Const planets As Integer = 8' this is private to this module Sub Earth () Const rad As Double = 6371 'Private to this subrutine. Nelze přistupovat mimo sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub Sub Mars () Const rad As Double = 3389,5 'Private to this subrutine. Nelze přistupovat mimo sArea = 4 * pi * Sqr (rad) Debug.Print sArea End Sub
Toto je jednoduchá proměnná specifikující rozsah. Zde si můžete podrobně přečíst o nastavení proměnného rozsahu.
Takže ano, lidi, takto deklarujete a používáte konstanty v aplikaci Excel VBA. Pokusil jsem se kreativně vysvětlit. Doufám, že jsem to vysvětlil dostatečně. Pokud máte nějaké pochybnosti, zeptejte se v sekci komentáře níže. Rád vás uslyším a odpovím vám.
Proměnný rozsah aplikace Excel VBA | máme specifikátory přístupu k proměnným, které definují, odkud lze k definované proměnné přistupovat. Excel VBA není výjimkou. VBA má také specifikátory rozsahu. Tyto specifikátory rozsahu lze použít k nastavení viditelnosti/rozsahu proměnné v aplikaci Excel VBA.
Argumenty ByRef a ByVal | Když je argument předán jako argument ByRef jinému sub nebo funkci, je odeslán odkaz na skutečnou proměnnou. Jakékoli změny provedené v kopii proměnné se projeví v původním argumentu.
Odstraňte listy bez výzev k potvrzení pomocí jazyka VBA v aplikaci Microsoft Excel | Protože listy odstraňujete pomocí jazyka VBA, víte, co děláte. Chtěli byste říct Excelu, aby toto varování nezobrazoval a ten zatracený list smazal.
Přidat a uložit nový sešit pomocí jazyka VBA v aplikaci Microsoft Excel 2016 | V tomto kódu jsme nejprve vytvořili odkaz na objekt sešitu. A pak jsme to inicializovali novým objektem sešitu. Výhodou tohoto přístupu je, že na tomto novém sešitu můžete snadno provádět operace. Stejně jako ukládání, zavírání, mazání atd
Zobrazit zprávu na stavovém řádku aplikace Excel VBA Stavový řádek v aplikaci Excel lze použít jako monitor kódu. Když je váš kód VBA dlouhý a provádíte několik úkolů pomocí VBA, často deaktivujete aktualizaci obrazovky, abyste neviděli, že obrazovka bliká
Vypnout výstražné zprávy pomocí VBA v aplikaci Microsoft Excel 2016 | Tento kód nejenže zakáže výstrahy VBA, ale také zvyšuje časovou efektivitu kódu. Uvidíme jak.
Oblíbené články:
50 zkratek aplikace Excel pro zvýšení produktivity | Získejte rychleji svůj úkol. Těchto 50 klávesových zkratek vám umožní pracovat v Excelu ještě rychleji.
Funkce VLOOKUP v Excelu | Toto je jedna z nejpoužívanějších a nejoblíbenějších funkcí Excelu, která slouží k vyhledávání hodnot z různých rozsahů a listů.
COUNTIF v aplikaci Excel 2016 | Pomocí této úžasné funkce spočítejte hodnoty s podmínkami. K počítání konkrétní hodnoty není nutné filtrovat data. Funkce Countif je nezbytná pro přípravu řídicího panelu.
Jak používat funkci SUMIF v aplikaci Excel | Toto je další základní funkce řídicího panelu. To vám pomůže shrnout hodnoty za konkrétních podmínek.