Dátové typy VBA - premenné a konštanty
Tento tutoriál VBA vám pomôže porozumieť konceptu toho, čo sú to premenné a konštanty. To je dôležité vedieť pre všetky programovacie jazyky, nielen pre VBA.
Ak sa chcete začať učiť programovať, musíte pochopiť, čo sú to premenné a konštanty a ako ich používať vo svojom kóde.
Čo je to premenná?
Premenná je hodnota, ktorú deklarujete vo svojom kóde, a preto je rezervovaná v pamäti vášho počítača a uložená. Musíte premennú pomenovať a je osvedčené deklarovať dátový typ premennej. Keď deklarujete typ údajov, poviete programu, typ údajov, ktoré musí vaša premenná uložiť.
Premennú použijete vo svojom kóde a program tiež získa prístup k vašej premennej. Skutočná hodnota premennej sa môže meniť, kým je váš kód spustený.
Vo VBA musíme na vyhlásenie premennej použiť príkaz Dim. Spôsob deklarácie premennej vo VBA je zobrazený v nasledujúcom kóde:
123456 | Pod DeklaráciaAVariable ()Dim product_Name as StringDim number_of_Products as IntegerKoniec pod |
Hneď ako urobíte vyhlásenie, môžete svoju premennú inicializovať, pretože deklarovaním premennej sa rezervuje miesto v pamäti vášho počítača. Keď inicializujete svoju premennú, priradíte jej počiatočnú hodnotu. Spôsob inicializácie premennej vo VBA je zobrazený v nasledujúcom kóde:
123456 | Sub InitializingAVariable ()Dim number_of_Products As Integernumber_of_Products = 5000Koniec pod |
Pokiaľ ide o pomenovanie premennej vo VBA, musíte zabezpečiť, aby:
• Nejde o vyhradené kľúčové slovo. VBA má určité vyhradené kľúčové slová, ako sú dim, súkromné, funkčné, slučkové a ďalšie kľúčové slová, ktoré budete používať vo svojom kóde a svoju premennú nemôžete pomenovať podľa kľúčového slova.
• Pri pomenovaní premenných nepoužívate špeciálne znaky ako!, @, &,., # Alebo medzery.
• Názov premennej nesmie mať viac ako 255 znakov.
• Rovnako nemôžete začínať názvom premennej číslom.
Rôzne bežné typy údajov dostupné vo VBA
Existuje niekoľko typov údajov, ktoré môžete vo VBA použiť. Existujú však bežné, ktoré vo svojom kóde väčšinou použijete. Sú to tieto:
• Reťazec - slúži na ukladanie textových hodnôt.
• Booleovský - používa sa na ukladanie hodnôt TRUE alebo FALSE.
• Celé číslo - slúži na ukladanie hodnôt celých čísel.
• Dvojité - slúži na ukladanie čísel s desatinnými miestami.
• Dátum - slúži na ukladanie dátumov.
Poznámka: Keď ukladáte hodnotu do dátového typu String, musíte použiť úvodzovky. Napríklad:
12 | Dim product_Name ako reťazecproduct_Name = „ABC produkt“ |
Poznámka: Keď ukladáte hodnotu do dátového typu Date, musíte použiť úvodzovky. Napríklad:
12 | Dim start_date as Datestart_date = “1.4.2019” |
Tabuľka všetkých dátových typov VBA
Dátový typ | Uložené | Rozsah hodnôt |
---|---|---|
Bajt | 1 bajt | 0 až 255 |
Celé číslo | 2 bajty | -32 768 až 32 767 |
Single | 4 bajty | -3,402823E38 až -1,401298E-45 pre záporné hodnoty, 1,401298E-45 až 3,402823E38 pre kladné hodnoty |
Dlho | 4 bajty | -2 147 483 648 až 2 147 483 648 |
Dvojité | 8 bajtov | -1,79769313486232e+308 až -4,94065645841247E-324 pre záporné hodnoty, 4,94065645841247E-324 až 1,79769313486232e+308 pre kladné hodnoty. |
Desatinné | 14 bajtov | +/- 79 228 162 514 264 337 593 543 950 335 bez desatinných miest,+/-7,9228162514264337593543950335 za 28 miest vpravo od desatinnej čiarky |
Dátum | 8 bajtov | 1. januára 100 do 31. decembra 9999 |
Mena | 8 bajtov | -922 337 203 685 477,5808 až 922 337 203 685 477,5807 |
Reťazec (premenlivá dĺžka) | K dĺžke reťazca bolo pridaných 10 bajtov | 0 až 2 miliardy znakov |
Reťazec (pevná dĺžka) | dĺžka reťazca | 1 až približne 65 400 |
Objekt | 4 bajty | Objekt vo VBA |
Booleovský | 2 bajty | Pravda alebo lož |
Použitie dátového typu Variant
Ak si nie ste istí typom údajov svojej premennej alebo je pravdepodobne potrebné ich zmeniť, môžete použiť variantný typ údajov.
Variantný dátový typ môže ukladať akýkoľvek druh údajov okrem dátového typu String s pevnou dĺžkou. Variantný typ údajov deklarujete nasledujúcim spôsobom:
1 | Dim myValue ako variant |
Použitie možnosti explicitne vo VBA
Keď vo VBA používate Option Explicit, znamená to, že musíte deklarovať všetky svoje premenné, čo je dobré urobiť. Môžete zaistiť, aby Excel vždy automaticky pridal možnosť explicitne do VBE tak, že prejdete na položku Nástroje> Možnosti> Editor a potom začiarknete políčko Vyžadovať premenné.
Použitie premenných vo vašom kóde
Nasledujúci príklad ilustruje všetky koncepty, ktorým sme sa venovali vyššie:
1234567 | Sub UsingVariablesInYourCode ()Dim product_Name as Stringproduct_Name = "ABC produkt"MsgBox názov_produktuKoniec pod |
Výsledkom je:
Čo je to konštanta?
Konštanta je podobná premennej, ale ukladá hodnotu, ktorú nemožno zmeniť. Spôsob deklarácie konštanty vo VBA je zobrazený v nasledujúcom kóde:
123456 | Pod Deklarácia AC Konštantná ()Konštantný počet dní = 1MsgBox Počet dníKoniec pod |
Výsledkom je:
Poznámka: Konštantu môžete vyhlásiť ako súkromnú, čo znamená, že ju môžete použiť iba vo vlastnom module, alebo môžete konštantu vyhlásiť ako verejnú, čo znamená, že ju môžete použiť aj v iných moduloch.