Proměnné, datové typy a konstanty VBA v Excelu

⚡ Chytré shrnutí

Proměnné, datové typy a konstanty VBA v Excelu ukládají a označují hodnoty, se kterými program pracuje. Tato stránka vysvětluje pravidla pojmenování proměnných, implicitní a explicitní deklaraci pomocí funkce Dim, číselné a nečíselné datové typy a deklaraci konstanty pomocí funkce Const.

  • ???? Proměnná: Pojmenovaná hodnota uložená v paměti, kterou kód ukládá a později zpětně načte.
  • 🔤 Pravidla pojmenování: Jméno má méně než 255 znaků, neobsahuje mezery, nezačíná číslicí a neobsahuje tečku.
  • __ Prohlášení: Klíčové slovo Dim explicitně deklaruje proměnnou, například Dim Num As Integer.
  • 🔢 Číselné typy: Bajt, celé číslo, dlouhé číslo, jeden bajt, DoubleTypy , Měna a Desetinná soustava se liší úložištěm a rozsahem.
  • 🔠 Nečíselné typy: Typy String, Boolean, Date, Object a Variant obsahují text, hodnotu true nebo false, data a objekty.
  • 🔒 Konstantní: Klíčové slovo Const deklaruje hodnotu, kterou nelze změnit, například Const DaysInYear = 365.

Proměnné VBA, datové typy a konstanty v Excelu

Proměnné se používají téměř ve všech počítačových programech a VBA se neliší. Je dobrým zvykem deklarovat proměnnou na začátku procedury. Není to nutné, ale pomáhá to identifikovat povahu obsahu (text, data, čísla atd.)

Proměnné VBA

Proměnné jsou specifické hodnoty, které jsou uloženy v paměti počítače nebo v úložném systému. Later, můžete tuto hodnotu použít v kódu a spustit. Počítač tuto hodnotu načte ze systému a zobrazí ji ve výstupu. Každý z typů proměnných Excel VBA musí mít název.

Chcete-li pojmenovat proměnnou ve VBA, musíte dodržovat následující pravidla.

  • Musí mít méně než 255 znaků
  • Nejsou povoleny žádné mezery
  • Nesmí začínat číslem
  • Období není povoleno

Zde je několik příkladů platných a neplatných názvů proměnných ve VBA.

Proměnné VBA Platná jména Proměnné VBA Neplatná jména
Moje hodinky Moje hodinky
Nové auto1 1_NewCar (nezačíná číslem)
ID zaměstnance ID zaměstnance (místo není povoleno)

In VBA, musíme proměnné před použitím deklarovat přiřazením názvů a datových typů.

Ve VBA jsou proměnné deklarovány implicitně nebo Explicitně.

  • Implicitně: Níže je uveden příklad proměnné deklarované implicitně.
  • label=guru99
  • objem=4
  • Explicitně: Níže je uveden příklad proměnné deklarované Explicitly. V syntaxi můžete použít klíčové slovo „Dim“.
  • Slunce Num As Integer
  • Slunce heslo As String

Proměnná VBA se neliší od ostatních programovacích jazyků. K deklaraci proměnné ve VBA použijte klíčové slovo "Ztlumit."

Syntaxe pro proměnnou VBA,

Chcete-li deklarovat proměnnou ve VBA, zadejte Dim následovaný názvem:

Sub Exercise ()
        Dim <name>
End Sub

Než provedeme proměnné, musíme zaznamenat a makro v Excelu. Chcete-li zaznamenat makro, postupujte takto:

Krok 1): Záznam makra 1

Krok 2) : Zastavení makra 1

Krok 3): Otevřete editor maker, zadejte kód pro proměnnou do Macro1

Krok 4): Spusťte kód pro makro 1

Příklad pro proměnnou VBA

Sub Macro1()
	Dim Num As Integer
	Num = 99
	MsgBox " Guru " & Num
End Sub

Když spustíte tento kód, získáte v listu následující výstup.

Proměnné VBA

Datové typy Excel VBA

Počítač nedokáže rozlišit mezi čísly (1,2,3..) a řetězci (a,b,c,..). K tomuto rozlišení používáme datové typy.

Datové typy VBA lze rozdělit do dvou typů

  • Číselné datové typy
Typ Skladování Rozsah hodnot
Byte 1 bajtů 0 255 na
Celé číslo 2 bytů -32,768 na 32,767
Dlouho 4 bytů -2,147,483,648 na 2,147,483,648
Jediný 4 bytů -3.402823E+38 až -1.401298E-45 pro záporné hodnoty 1.401298E-45 až 3.402823E+38 pro kladné hodnoty.
Double 8 bytů -1.79769313486232e+308 až -4.94065645841247E-324 pro záporné hodnoty
4.94065645841247E-324 až 1.79769313486232e+308 pro kladné hodnoty.
Měna 8 bytů -922,337,203,685,477.5808 na 922,337,203,685,477.5807
Desetinný 12 bytů +/- 79,228,162,514,264,337,593,543,950,335 7.9228162514264337593543950335 28 XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX, pokud není použito žádné desetinné místo, +/- XNUMX (XNUMX desetinných míst)
  • Nečíselné datové typy
Datový typ Použité bajty Rozsah hodnot
Řetězec (pevná délka) Délka provázku 1 až 65,400 znaků
Řetězec (proměnná délka) Délka + 10 bajtů 0 až 2 miliardy znaků
Boolean 2 bytů Pravda nebo lež
Datum 8 bytů 1. ledna 100 až 31. prosince 9999
Objekt 4 bytů Jakýkoli vložený objekt
Varianta (číselná) 16 bytů Jakákoli hodnota tak velká jako Double
Varianta(text) Délka + 22 bajtů Stejné jako řetězec s proměnnou délkou

Ve VBA, pokud není zadán datový typ, bude proměnná automaticky deklarována jako Varianta.

Podívejme se na příklad, jak deklarovat proměnné ve VBA. V tomto příkladu budeme deklarovat tři typy řetězců proměnných, datum spojení a měnu.

Krok 1) Stejně jako v předchozím tutoriálu vložíme příkazové tlačítko1 do našeho list Excelu.

Datové typy Excel VBA

Krok 2) V dalším kroku klikněte pravým tlačítkem na tlačítko a vyberte Zobrazit kód. Otevře se okno s kódem, jak je znázorněno níže.

Datové typy Excel VBA

Krok 3) V tomto kroku,

  • Uložte soubor kliknutím na tlačítko Uložit Datové typy Excel VBA
  • Poté klikněte na ikonu Excel Datové typy Excel VBA ve stejném okně pro vrácení listu Excel.
  • Můžete vidět, že režim návrhu je „on“ zvýrazněný zeleně

Datové typy Excel VBA

Krok 4) Před kliknutím na příkazové tlačítko vypněte režim návrhu

Datové typy Excel VBA

Krok 5) Po vypnutí režimu návrhu klepnete na commandButton1. Zobrazí následující proměnnou jako výstup pro rozsah, který jsme deklarovali v kódu.

  • Jméno
  • Datum připojení
  • Příjem v měně

Datové typy Excel VBA

Konstanta ve VBA

Konstanta je jako proměnná, ale nemůžete ji upravit. Chcete-li deklarovat konstanty VBA, můžete použít klíčové slovo Const.

Existují dva typy konstant,

  • Vestavěné nebo vnitřní poskytované aplikací.
  • Symbolické nebo definované uživatelem

Můžete buď zadat rozsah jako soukromé standardně popř na veřejnosti. Například,

Public Const DaysInYear=365

Soukromé stálé pracovní dny=250

Stáhněte si Excel obsahující výše uvedený kód

Stáhněte si výše uvedený Excel Code

Proměnná, rozsah a explicitní volba

Místo, kde je proměnná deklarována, určuje, kde ji lze použít, a jedno malé nastavení v horní části modulu zabraňuje většině chyb typu „ty“.ping chyby. Pochopení obou udržuje rostoucí program spolehlivý.

Klíčové slovo Rozsah Život
Dim (uvnitř Sub) Pouze procedura, ve které je deklarována Resetovat při každém spuštění procedury
statický Pouze postup, ale hodnota je zachována Zapamatováno mezi hovory
Soukromé (v horní části modulu) Každý postup v tomto modulu Platí, dokud je sešit otevřený.
Veřejné (v horní části modulu) Každý modul v projektu Platí, dokud je sešit otevřený.

💡 Tip: Typ Možnost explicitní jako první řádek každého modulu. Vynucuje deklaraci každé proměnné s Dim, takže chybně napsaný název je zachycen při kompilaci, místo aby se tiše vytvořil nový prázdný Variant.

Nejčastější dotazy

Proměnná uchovává hodnotu, kterou může kód během běhu měnit. Konstanta uchovává hodnotu, která je pevně daná parametrem Const a nelze ji změnit. Konstantu použijte pro hodnotu, která se nikdy nemění, například daňovou sazbu.

Celé číslo uchovává pouze hodnoty od -32 768 do 32 767, takže počet řádků nebo velké číslo jej přeteče. Typ Long uchovává mnohem větší hodnoty a Microsoft V moderním VBA nyní doporučuje pro celá čísla funkci Long.

Typ Variant je výchozí typ, pokud není zadán žádný. Může obsahovat číslo, text, datum nebo objekt, což je flexibilní, ale spotřebovává více paměti a běží pomaleji. Pokud je to možné, deklarujte konkrétní typ.

Ano. Asistenti AI kódu čtou, jak se proměnná používá, a navrhují vhodný typ, například Long pro čítač nebo String pro text. Vývojář potvrdí volbu a přidá Option Explicit.

Ano. Asistenti umělé inteligence označí chybně napsanou nebo nedeklarovanou proměnnou, vysvětlí, proč ji Option Explicit hlásí, a navrhnou správnou deklaraci. Vývojář použije opravu a modul znovu zkompiluje.

Shrňte tento příspěvek takto: