Microsoft Office Online
Přihlášení k webu Moje služba Office Online (Co je to?) | Přihlásit

 
 
Microsoft Office Access
Hledat
Hledat
 
Vyzkoušení nebo nákup
Získání systému Office 2007
Aktualizace: (c) Microsoft
Stahování pro sadu Office
 
 
 
Upozornění: Tuto stránku zobrazujete v nepodporované verzi webového prohlížeče. Tento web pracuje nejlépe v aplikaci Microsoft Internet Explorer 6.0 či novější, v aplikaci Firefox 1.5 nebo v aplikaci Netscape Navigator 8.0 či novější. Další informace o podporovaných prohlížečích

Funkce pro převody typu
 

Každá funkce převede výraz (Výraz: Libovolná kombinace matematických nebo logických operátorů, konstant, funkcí a názvů polí, ovládacích prvků a vlastností, kterou je možné vyhodnotit jako jednu hodnotu. Pomocí výrazů je možné provádět výpočty, pracovat se znaky nebo testovat data.) na určitý datový typ (Datový typ: Vlastnost pole, jež určuje, jaký typ dat může pole obsahovat. Mezi datové typy patří např. Boolean, Integer, Long, Měna, Single, Double, Date, String a Variant (výchozí).).

Syntaxe

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ým argumentem (Argument: Hodnota, která poskytuje informace určité akci, události, metodě, vlastnosti, funkci nebo proceduře.) výraz je libovolný řetězcový výraz (Řetězcový výraz: Výraz, který je vyhodnocen jako posloupnost sousedících znaků. Prvky výrazu mohou zahrnovat: funkce vracející řetězec nebo řetězec typu Variant (VarType 8), řetězcový literál, konstantu, proměnnou nebo řetězec typu Variant</.) nebo číselný výraz (Číselný výraz: Libovolný výraz, jehož výsledkem je číslo. Výraz může být libovolnou kombinací proměnných, konstant, funkcí a operátorů.).

Návratové typy

Název funkce určuje návratový typ následujícím způsobem:

Funkce Návratový typ Rozsah pro argument výraz
CBool Boolean Libovolný platný řetězec nebo číselný výraz
CByte Byte 0 až 255
CCur Currency -922 337 203 685 477,5808 až 922 337 203 685 477,5807
CDate Date Libovolný platný výraz kalendářního data
CDbl Double -1,79769313486231E308 až
-4,94065645841247E-324 pro záporné hodnoty; 4,94065645841247E-324 až 1,79769313486232E308 pro kladné hodnoty
CDec Decimal +/-79 228 162 514 264 337 593 543 950 335 pro čísla bez desetinných míst. Rozsah pro čísla s 28 desetinnými místy je
+/-7,9228162514264337593543950335. Nejmenší možné nenulové číslo je 0,0000000000000000000000000001.
CInt Integer -32 768 až 32 767, desetinné části jsou zaokrouhlovány
CLng Long -2 147 483 648 až 2 147 483 647; zlomky jsou zaokrouhlovány
CSng Single -3,402823E38 až -1,401298E-45 pro záporné hodnoty, 1,401298E-45 až 3,402823E38 pro kladné hodnoty
CStr String Návratový typ pro funkci CStr závisí na argumentu výraz.
CVar Variant Pro číselné hodnoty stejný rozsah jako u typu Double, pro jiné než číselné hodnoty stejný rozsah jako u typu String

Poznámky

Pokud se výraz předaný funkci nachází mimo rozsah datového typu, na který je převáděn, dojde k chybě.

Obecně je možné pomocí funkcí pro převody datového typu upravovat kód tak, aby bylo zajištěno, že výsledek nějaké operace bude vyjádřen jako určitý datový typ, nikoli jako výchozí datový typ. Pomocí funkce CCur můžete například zajistit provedení výpočtu s hodnotami měny v případech, ve kterých by normálně byl prováděn výpočet s hodnotami s jednoduchou přesností, s dvojitou přesností nebo s celými čísly.

K provádění převodů datového typu mezi různými národními prostředími by měly být místo funkce Val používány funkce pro převody datového typu. Použijete-li například funkci CCur, budou různé oddělovače desetinných míst, oddělovače tisíců a možnosti měny správně rozpoznány na základě nastavení národního prostředí počítače.

Zlomek o velikosti přesně 0,5 bude funkcemi CInt a CLng zaokrouhlen vždy na nejbližší sudé číslo. Například hodnota 0,5 bude zaokrouhlena na číslo 0 a hodnota 1,5 bude zaokrouhlena na číslo 2. Funkce CInt a CLng se liší od funkcí Fix a Int, které část čísla za desetinnou čárkou nezaokrouhlují, ale zkracují. Funkce Fix a Int vrátí vždy hodnotu stejného typu jako předaná hodnota.

Chcete-li určit, zda je možné datum převést na datum nebo čas, použijte funkci IsDate. Funkce CDate rozpoznává datové a časové literály a rovněž některá čísla, která spadají do rozsahu přípustných dat. Při převodu čísla na datum je celá část čísla převáděna na datum. Desetinná část čísla je převáděna na čas, který je počítán od půlnoci.

Funkce CDate rozpoznává formáty data podle nastavení národního prostředí (Národní prostředí: Sada informací, které odpovídají danému jazyku a zemi.) systému. Správné pořadí dne, měsíce a roku pravděpodobně nebude možné určit v případech, kdy je datum uvedeno ve formátu jiném než jeden z rozpoznávaných formátů dat. Kromě toho dlouhý formát data nebude rozpoznán, pokud obsahuje rovněž řetězec udávající den v týdnu.

Funkce CVDate slouží také pro zajištění kompatibility s předchozími verzemi jazyka Visual Basic. Syntaxe funkce CVDate je shodná s funkcí CDate, avšak funkce CVDate vrací místo skutečného typu Date typ Variant, jehož podtyp je Date. Nyní je k dispozici integrovaný typ Date, takže funkce CVDate již není zapotřebí. Stejného účinku dosáhnete v případě, že výraz převedete na typ Date a potom mu přiřadíte typ Variant. Tímto způsobem lze převádět i všechny ostatní integrované typy na ekvivalentní podtypy typu Variant.

 Poznámka:    Funkce CDec nevrací nespojitý datový typ. Místo toho vždy vrátí datový typ Variant, jehož hodnota byla převedena na podtyp Decimal.

Příklady

 Poznámka:   Následující příklady uvádějí použití této funkce v modulu jazyka Visual Basic for Applications (VBA). Další informace o práci s jazykem VBA získáte tak, že klepnete na položku Referenční informace pro vývojáře v rozevíracím seznamu vedle pole Hledat a do pole pro hledání zadáte jeden nebo více pojmů.

Funkce CBool

V tomto příkladu je funkce CBool použita k převodu výrazu na typ Boolean. Je-li výraz vyhodnocen jako nenulová hodnota, bude funkcí CBool vrácena hodnota True. V opačném případě bude vrácena hodnota False.

Dim A, B, Check
A = 5: B = 5    ' Inicializování proměnných
Check = CBool(A = B)    ' Check obsahuje hodnotu True.

A = 0    ' Definování proměnné
Check = CBool(A)    ' Check obsahuje hodnotu False.

				

Funkce CByte

V tomto příkladu je funkce CByte použita k převodu výrazu na typ Byte.

Dim MyDouble, MyByte
MyDouble = 125.5678    ' MyDouble má typ Double.
MyByte = CByte(MyDouble)    ' MyByte obsahuje hodnotu 126.

				

Funkce CCur

V tomto příkladu je funkce CCur použita k převodu výrazu na typ Currency.

Dim MyDouble, MyCurr
MyDouble = 543.214588    ' MyDouble má typ Double.
MyCurr = CCur(MyDouble * 2)    
' Převedení výsledku hodnoty MyDouble * 2 (1086.429176) na
' typ Currency (1086.4292)

				

Funkce CDate

V tomto příkladu je funkce CDate použita k převodu řetězce na typ Date. Obecně se nedoporučuje používat data a časy, jež jsou pevně zadány jako řetězce (jak je uvedeno v tomto příkladu). Místo nich používejte datové a časové literály, například #2. 12. 1969# a #16:45:23#.

Dim MyDate, MyShortDate, MyTime, MyShortTime
MyDate = "February 12, 1969" 
' Převedení na typ Date
MyShortDate = CDate(MyDate)

MyTime = "4:35:47 PM" 
' Převedení na typ Date
MyShortTime = CDate(MyTime)

				

Funkce CDbl

V tomto příkladu je funkce CDbl použita k převodu výrazu na typ Double.

Dim MyCurr, MyDouble
MyCurr = CCur(234.456784)
' Převedení výsledku na typ Double
MyDouble = CDbl(MyCurr * 8.2 * 0.01)

				

Funkce CDec

V tomto příkladu je funkce CDec použita k převodu číselné hodnoty na typ Decimal.

Dim MyDecimal, MyCurr
MyCurr = 10000000.0587    ' MyCurr je typu Currency.
MyDecimal = CDec(MyCurr)     ' MyDecimal je typu Decimal.

				

Funkce CInt

V tomto příkladu je funkce CInt použita k převodu hodnoty na typ Integer.

Dim MyDouble, MyInt
MyDouble = 2345.5678    ' MyDouble je typu Double.
MyInt = CInt(MyDouble)    ' MyInt obsahuje hodnotu 2346.

				

Funkce CLng

V tomto příkladu je funkce CLng použita k převodu hodnoty na typ Long.

Dim MyVal1, MyVal2, MyLong1, MyLong2
MyVal1 = 25427.45
MyVal2 = 25427.55
' MyVal1, MyVal2 jsou hodnoty typu Double.
MyLong1 = CLng(MyVal1)
' MyLong1 obsahuje hodnotu 25427.
MyLong2 = CLng(MyVal2)
' MyLong2 obsahuje hodnotu 25428.

				

Funkce CSng

V tomto příkladu je funkce CSng použita k převodu hodnoty na typ Single.

Dim MyDouble1, MyDouble2, MySingle1, MySingle2
' MyDouble1, MyDouble2 jsou hodnoty typu Double.
MyDouble1 = 75.3421115: MyDouble2 = 75.3421555
MySingle1 = CSng(MyDouble1)
' MySingle1 obsahuje hodnotu 75.34211.
MySingle2 = CSng(MyDouble2)
' MySingle2 obsahuje hodnotu 75.34216.

				

Funkce CStr

V tomto příkladu je funkce CStr použita k převodu číselné hodnoty na typ String.

Dim MyDouble, MyString
MyDouble = 437.324    ' MyDouble je hodnota typu Double.
MyString = CStr(MyDouble)
' MyString obsahuje hodnotu "437.324".

				

Funkce CVar

V tomto příkladu je funkce CVar použita k převodu výrazu na typ Variant.

Dim MyInt, MyVar
MyInt = 4534    ' MyInt je typu Integer.
MyVar = CVar(MyInt & "000") 
' MyVar obsahuje řetězec 4534000.

				
inzerát