Funkcia CDEC vo VBA
CDEC je zabudovaná funkcia prevodu dátových typov dostupná ako funkcia VBA. Funkcia VBA CDEC prevádza dátový typ z ktoréhokoľvek iného dátového typu na desatinný dátový typ. Znamená to „Konvertovať na desatinné miesto“.
Keď pracujeme s údajmi a požiadame používateľov o zadanie hodnôt, môže existovať množstvo formátov, v ktorých nám môže používateľ poskytnúť hodnoty, ako napríklad používateľ môže poskytnúť desatinnú hodnotu a nedeciálnu hodnotu, funkciu CDEC v VBA nám pomáha prevádzať ľubovoľné hodnoty na desatinné hodnoty a jedná sa o zabudovanú funkciu v programe Excel.
![](https://cdn.know-base.net/7000355/vba_cdec_how_to_use_cdec_function_in_vba_examples.png.webp)
Nižšie je uvedená syntax funkcie CDEC.
![](https://cdn.know-base.net/7000355/vba_cdec_how_to_use_cdec_function_in_vba_examples_2.png.webp)
Výraz: Toto nie je nič iné ako hodnota, ktorú sa pokúšame previesť na desatinný dátový typ. Môže to byť buď priama číselná hodnota, alebo premenná, ktorá drží číselnú hodnotu.
- Skôr ako uvidíme, ako previesť hodnotu na desatinné dátové typy, dovoľte mi podrobne vás oboznámiť s typom desatinných údajov.
- Bežné numerické dátové typy, ktoré používame, sú „Long, Integer a Double.“ Nie je k dispozícii žiadny špeciálny dátový typ „Decimal“, ktorý by uchovával dlhé desatinné hodnoty. Dátové typy typu Long & Integer prevádzajú číslo na celé číslo, aj keď je im priradená desatinná hodnota.
- Na ukladanie desatinných hodnôt do premenných teda musíme deklarovať premennú ako dátový typ „Variant“. Potom pomocou funkcie VBA CDEC môžeme previesť na desatinný dátový typ.
- Na ukladanie desatinných hodnôt až do 14 číslic môžeme použiť dátový typ „Double“, ale pomocou konverznej funkcie VBA CDEC môžeme uložiť 28 desatinných miest.
- Pokiaľ ide o obsadenie pamäte, CDEC spotrebuje 14 bajtov systémovej pamäte, a keďže vopred deklarujeme variabilný dátový typ ako „Variant“, bude hodnota vždy nula.
Príklady použitia funkcie VBA CDEC
V nasledujúcej časti článku uvidíme niekoľko príkladov.
Napríklad sa pozrite na nižšie uvedený kód VBA.
Kód:
Sub CDEC_Example () Dim k As Integer k = 2.5698979797646 MsgBox k End Sub
Vo vyššie uvedenom texte sme pri spustení kódu deklarovali premennú VBA ako „Celé číslo“ a hodnotu dostaneme do poľa so správou vo VBA, ako je uvedené nižšie.
![](https://cdn.know-base.net/7000355/vba_cdec_how_to_use_cdec_function_in_vba_examples.gif)
Keď sme hodnote 2,5698979797646 výsledkov priradili hodnotu 3, je to preto, že dátový typ, ktorý sme premennej priradili, je „Integer“, takže číslo sa prevedie na najbližšiu celočíselnú hodnotu.
Poznámka: Ak je desatinná hodnota> 0,5, potom sa zaokrúhli nahor na ďalšiu celočíselnú hodnotu, a ak je desatinná hodnota <0,51, zaokrúhli sa nadol na celú celočíselnú hodnotu.- Dobre, teraz mi dovoľte priradiť funkciu CDEC na prevod hodnoty dátového typu na desatinné miesto.
- Ako vidíte vyššie, premennej „k“ som priradil hodnotu pomocou funkcie prevodu VBA CDEC.
- Vykonajte kód a uvidíte, čo dostaneme.
- Aj teraz sme dostali výsledok ako tri z dôvodu prideleného dátového typu Integer v okamihu a vždy zaokrúhli číslo na ďalšiu celočíselnú hodnotu.
Aby sme teda mohli najskôr priradiť dátový typ „Decimal“, musíme dátový typ priradiť ako „Variant“ a potom prevádzať na Decimal pomocou funkcie CDEC.
Kód:
Sub CDEC_Example () Dim k As Variant k = CDec (2.5698979797646) MsgBox k End Sub
Teraz vykonajte kód a uvidíte, čo dostaneme.
![](https://cdn.know-base.net/7000355/vba_cdec_how_to_use_cdec_function_in_vba_examples_2.gif)
Ďalšou špecialitou tohto desatinného dátového typu je, že môžeme ukladať viac ako 14-miestne desatinné hodnoty, na rozdiel od dátového typu Double, ktorý môže obsahovať iba 14 desatinných miest.
Teraz do premennej v dvojitých úvodzovkách zadám viac ako 14 číslic.
Kód:
Sub CDEC_Example () Dim k ako variant k = CDec ("2.56989797976466769416958") MsgBox k End SubPoznámka: Zadajte číslo s úvodzovkami, pretože bez dvojitých úvodzoviek po 14 čísliciach sa číslovanie bude ďalej zaokrúhľovať. Na zadávanie čísel v úvodzovkách.
Teraz spustite kód a uvidíte, čo dostaneme.
![](https://cdn.know-base.net/7000355/vba_cdec_how_to_use_cdec_function_in_vba_examples_3.gif)
Dostali sme všetky desatinné čísla, ktoré sme zadali do úvodzoviek.
Na čo treba pamätať
- CDEC znamená „Prevod na desatinné miesta“.
- Prijíma iba dátový typ „Variant“.
- Neexistuje dátový typ „Decimal“, ale pomocou funkcie CDEC môžeme ľahko konvertovať na desatinný dátový typ.
- Špecialitou je, že môže obsahovať „28“ číslice desatinných miest.