Funkcie na konverziu typu údajov

Funkcie na konverziu typu údajov

Dôležité : Tento článok je strojovo preložený, prečítajte si vyhlásenie. Anglickú verziu tohto článku nájdete tu a môžete ju použiť ako referenciu.

Každá funkcia konvertuje výraz na určitý typ údajov.

Syntax

CBool( výraz )

CByte( výraz )

CCur( výraz )

CDate( výraz )

CDbl( výraz )

CDec( výraz )

CInt( výraz )

CLng( výraz )

CSng( výraz )

CStr( výraz )

CVar( výraz )

Povinný argument výrazu je ľubovoľný reťazcový výraz alebo numerický výraz.

Vrátené typy

Názov funkcie určuje vrátený typ podľa nasledovnej tabuľky:

Funkcia

Vrátený typ

Rozsah pre argument výrazu

CBool

Boolean

Ľubovoľný platný reťazcový alebo numerický výraz.

CByte

Byte

0 až 255.

CCur

Currency

-922 337 203 685 477,5808 až 922 337 203 685 477,5807.

CDate

Date

Ľubovoľný platný dátumový výraz.

CDbl

Double

-1,79769313486231E308 až
-4,94065645841247E-324 pre záporné hodnoty, 4,94065645841247E-324 až 1,79769313486232E308 pre kladné hodnoty.

CDec

Decimal

Od +/-79 228 162 514 264 337 593 543 950 335 z množiny celých čísel, teda čísel bez desatinných miest. Pre čísla s 28 desatinnými miestami je rozsah
+/-7,9228162514264337593543950335. Najmenšie možné číslo iné ako nula je 0,0000000000000000000000000001.

CInt

Integer

-32 768 až 32 767, zlomky sa zaokrúhľujú.

CLng

Long

-2 147 483 648 až 2 147 483 647, zlomky sa zaokrúhľujú.

CSng

Single

-3,402823E38 až -1,401298E-45 pre záporné hodnoty, 1,401298E-45 až 3,402823E38 pre kladné hodnoty.

CStr

String

Vrátená hodnota pre funkciu CStr závisí od argumentu výrazu.

CVar

Variant

Rovnaký rozsah ako údajový typ Double pre numerické znaky. Rovnaký rozsah ako údajový typ String pre nenumerické znaky.


Poznámky

Ak sa pre funkciu zadá výraz mimo rozsahu údajového typu, na ktorý sa konvertuje, vyskytne sa chyba.

Svoj kód môžete vo všeobecnosti zdokumentovať prostredníctvom funkcií na konverziu údajových typov a ukázať tak, že výsledok určitej operácie by mal byť vyjadrený ako konkrétny údajový typ a nie ako predvolený údajový typ. Ak chcete napríklad presadiť použitie menovej aritmetiky v prípadoch, v ktorých sa zvyčajne používa aritmetika jednoduchej presnosti, dvojitej presnosti alebo celého čísla, použite funkciu CCur.

Funkcie na konverziu údajových typov by ste mali použiť namiesto funkcie Val, keď chcete poskytnúť konverziu jedného údajového typu na druhý s prihliadnutím na rozličnosť miestnych nastavení. Ak napríklad použijete funkciu CCur, táto správne rozpozná rôzne oddeľovače desatinných miest, oddeľovače tisícov a možnosti meny, ktoré závisia od miestnych nastavení počítača.

Keď má zlomková časť hodnotu presne 0,5, funkcie CInt a CLng vždy zaokrúhlia túto časť na najbližšie párne číslo. Číslo 0,5 sa napríklad zaokrúhli na číslo 0 a číslo 1,5 sa zaokrúhli na číslo 2. Funkcie CInt a CLng sa líšia od funkcií Fix a Int, ktoré zlomkovú časť čísla nezaokrúhľujú, ale odstraňujú. Funkcie Fix a Int okrem toho vždy vrátia hodnotu rovnakého typu, aký má aj vstupná hodnota.

Pomocou funkcie IsDate môžete určiť, či môže byť argument Date skonvertovaný na dátum alebo čas. Funkcia CDate rozpoznáva znakové reťazce dátumu a času, ako aj niektoré čísla, ktoré patria do rozsahu prijateľných dátumov. Pri konverzii čísla na dátum sa na dátum skonvertuje celočíselná časť čísla. Zlomková časť čísla sa skonvertuje na čas dňa, ktorý sa meria od polnoci.

Funkcia CDate rozpoznáva dátumové formáty podľa miestneho nastavenia systému. Správne poradie dňa, mesiaca a roka nemusí byť rozpoznané, ak je uvedené vo formáte, ktorý je iný ako známe nastavenia dátumu. Okrem toho sa nerozpozná ani formát dlhého dátumu, ak obsahuje aj reťazec dňa v týždni.

Funkcia CVDate sa používa aj z dôvodu kompatibility s predchádzajúcimi verziami jazyka Visual Basic. Syntax funkcie CVDate je rovnaká ako syntax funkcie CDate, funkcia CVDate však vráti údajový typ Variant, ktorého podtyp je Date, a nie skutočný typ Date. Keďže teraz už existuje vnútorný typ Date, funkcia CVDate už nie je potrebná. Rovnaký efekt je možné dosiahnuť aj skonvertovaním výrazu na typ Date a jeho priradením k údajovému typu Variant. Táto technika je konzistentná s konverziou všetkých ostatných vnútorných typov na ich ekvivalentné podtypy údajového typu Variant.

Poznámka :  Funkcia CDec nevráti samostatný údajový typ, ale namiesto toho vždy vráti údajový typ Variant, ktorého hodnota bola skonvertovaná na podtyp Decimal.

Príklady

Poznámka : Nasledujúce príklady ukazujú použitie tejto funkcie v module jazyka Visual Basic for Applications (VBA). Ak chcete získať ďalšie informácie o práci s jazykom VBA, vyberte z rozbaľovacieho zoznamu vedľa položky Hľadať možnosť Odkaz pre vývojára a do vyhľadávacieho poľa zadajte nejaké výrazy.

Funkcia CBool

Tip :  Zostavovač výrazov s technológiou IntelliSense, ktorý je k dispozícii v Accesse 2010 a novších verziách, vám pomôže správne zostaviť výrazy.

V tomto príklade sa používa funkcia CBool na skonvertovanie výrazu na hodnotu typu Boolean. Ak má výraz nenulovú hodnotu, funkcia CBool vráti hodnotu True. V opačnom prípade vráti hodnotu False.

Dim A, B, Check
A = 5: B = 5 ' Initialize variables.
Check = CBool(A = B) ' Check contains True.
A = 0 ' Define variable.
Check = CBool(A) ' Check contains False.

Funkcia CByte

V tomto príklade sa používa funkcia CByte na skonvertovanie výrazu na hodnotu typu Byte.

Dim MyDouble, MyByte
MyDouble = 125.5678 ' MyDouble is a Double.
MyByte = CByte(MyDouble) ' MyByte contains 126.

Funkcia CCur

V tomto príklade sa používa funkcia CCur na skonvertovanie výrazu na hodnotu typu Currency.

Dim MyDouble, MyCurr
MyDouble = 543.214588 ' MyDouble is a Double.
MyCurr = CCur(MyDouble * 2)
' Convert result of MyDouble * 2 (1086.429176) to a
' Currency (1086.4292).

Funkcia CDate

V tomto príklade sa používa funkcia CDate na skonvertovanie reťazca na hodnotu typu Date. Dátumy a časy sa vo všeobecnosti neodporúča programovať ako reťazce (ako v tomto príklade). Používajte radšej dátumové a časové znaky, napríklad #2/12/1969# a #4:45:23 PM#.

Dim MyDate, MyShortDate, MyTime, MyShortTime
MyDate = "February 12, 1969"
' Convert to Date data type.
MyShortDate = CDate(MyDate)
MyTime = "4:35:47 PM"
' Convert to Date data type.
MyShortTime = CDate(MyTime)

Funkcia CDbl

V tomto príklade sa používa funkcia CDbl na skonvertovanie výrazu na hodnotu typu Double.

Dim MyCurr, MyDouble
MyCurr = CCur(234.456784)
' Convert result to a Double.
MyDouble = CDbl(MyCurr * 8.2 * 0.01)

Funkcia CDec

V tomto príklade sa používa funkcia CDec na skonvertovanie numerickej hodnoty na hodnotu typu Decimal.

Dim MyDecimal, MyCurr
MyCurr = 10000000.0587 ' MyCurr is a Currency.
MyDecimal = CDec(MyCurr) ' MyDecimal is a Decimal.

Funkcia CInt

V tomto príklade sa používa funkcia CInt na skonvertovanie hodnoty na hodnotu typu Integer.

Dim MyDouble, MyInt
MyDouble = 2345.5678 ' MyDouble is a Double.
MyInt = CInt(MyDouble) ' MyInt contains 2346.

Funkcia CLng

V tomto príklade sa používa funkcia CLng na skonvertovanie hodnoty na hodnotu typu Long.

Dim MyVal1, MyVal2, MyLong1, MyLong2
MyVal1 = 25427.45
MyVal2 = 25427.55 ' MyVal1, MyVal2 are Doubles.
MyLong1 = CLng(MyVal1)
' MyLong1 contains 25427.
MyLong2 = CLng(MyVal2)
' MyLong2 contains 25428.

Funkcia CSng

V tomto príklade sa používa funkcia CSng na skonvertovanie hodnoty na hodnotu typu Single.

Dim MyDouble1, MyDouble2, MySingle1, MySingle2
' MyDouble1, MyDouble2 are Doubles.
MyDouble1 = 75.3421115: MyDouble2 = 75.3421555
MySingle1 = CSng(MyDouble1)
' MySingle1 contains 75.34211.
MySingle2 = CSng(MyDouble2)
' MySingle2 contains 75.34216.

Funkcia CStr

V tomto príklade sa používa funkcia CStr na skonvertovanie numerickej hodnoty na hodnotu typu String.

Dim MyDouble, MyString
MyDouble = 437.324 ' MyDouble is a Double.
MyString = CStr(MyDouble)
' MyString contains "437.324".

Funkcia CVar

V tomto príklade sa používa funkcia CVar na skonvertovanie výrazu na hodnotu typu Variant.

Dim MyInt, MyVar
MyInt = 4534 ' MyInt is an Integer.
MyVar = CVar(MyInt & "000")
' MyVar contains the string 4534000.

Poznámka : Vyhlásenie týkajúce sa strojového prekladu: Tento článok bol preložený počítačovým systémom bez zásahu človeka. Poskytovaním týchto strojových prekladov umožňuje spoločnosť Microsoft aj používateľom, ktorí nehovoria po anglicky, využívať obsah o produktoch, službách a technológiách spoločnosti Microsoft. Článok bol preložený strojovo, môže preto obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky.

Rozšírte svoje zručnosti
Preskúmať školenie
Buďte medzi prvými, ktorí získajú nové funkcie
Pridajte sa k insiderom pre Office

Boli tieto informácie užitočné?

Ďakujeme za vaše pripomienky!

Ďakujeme vám za pripomienky. Pravdepodobne vám pomôže, ak vás spojíme s pracovníkom podpory pre Office.

×