Minden függvény egy adott adattípusra alakítja az egyes kifejezéseket.
Szintaxis
CBool( kifejezés )
CByte( kifejezés )
CCur( kifejezés )
CDate( kifejezés )
CDbl( kifejezés )
CDec( kifejezés )
CInt( kifejezés )
CLng( kifejezés )
CSng( kifejezés )
CStr( kifejezés )
CVar( kifejezés )
A szükséges kifejezésargumentum bármely karakterlánc-kifejezés vagy numerikus kifejezés lehet.
A visszaadott eredmény típusa
A visszaadott eredményt a függvény neve határozza meg az alábbiak szerint:
Függvény |
A visszaadott eredmény típusa |
A kifejezés argumentum tartománya |
---|---|---|
CBool |
Logikai |
Bármely érvényes karakterlánc vagy numerikus kifejezés. |
CByte |
Bájt |
0 – 255. |
CCur |
Pénznem |
-922,337,203,685,477.5808 – 922,337,203,685,477.5807. |
CDate |
Dátum |
Bármely érvényes dátum típusú kifejezés. |
CDbl |
Dupla |
-1.79769313486231E308 -4,94065645841247E-324 negatív értékek esetén; 4,94065645841247E-324–1,79769313486232E308 pozitív értékek esetén. |
CDec |
Decimális |
+/-79,228,162,514,264,337,593,543,950,335 tartományban a nullskálás, azaz tizedesjegyet nem tartalmazó számok esetén. A 28 tizedesjegyet tartalmazó számok esetében a tartomány +/-7.9228162514264337593543950335. A legkisebb nullától különböző szám: 0.0000000000000000000000000001. |
CInt |
Egész |
-32,768 to 32,767; a törtek kerekítve. |
CLng |
Hosszú |
-2,147,483,648 to 2,147,483,647; a törtek kerekítve. |
CSng |
Egyszeres |
-3,402823E38 és -1,401298E-45 között negatív értékekre; 1,401298E-45 és 3,402823E38 között pozitív értékekre. |
CStr |
Karakterlánc |
A CStr függvény visszatérési típusa a kifejezésargumentumtól függ. |
CVar |
Variant |
Numerikus kifejezéseknél ugyanaz a tartomány, mint a dupla adattípusnál. Nem numerikus adatoknál pedig a karakterlánc tartománya vonatkozik rá. |
Megjegyzések
Ha a függvénynek átadott kifejezés azon adattípus tartományán kívülre esik, amelyikké alakítani szeretnénk, hiba történik.
Adattípus-konverziós függvények használatakor érdemes jelezni, ha az egyes műveletek eredményeit az alapértelmezettől eltérő adattípussal jeleníti meg. A CCur függvény használható például pénznem megjelenítésére olyan esetben, ahol amúgy egyszeres pontosságú, kétszeres pontosságú vagy egész érték szerepelne.
Nemzetközi szinten is helyesen működő adattípus-konverziókhoz a Val függvény helyett használja az adattípus-konverziós függvényeket. A CCur függvény használatakor például a különböző tizedesjegyek, ezreselválasztók és pénznem-beállítások felismerése a számítógép területi beállításai alapján történik.
Ha az érték törtrésze pontosan 0,5, a CInt és a CLng függvény mindig a legközelebbi páros számra kerekíti azt. A 0,5 például kerekítve 0, az 1,5 pedig 2 lesz. A CInt és a CLng függvény különbözik a Fix és az Int függvénytől, amely nem kerekíti, hanem levágja a számok tört részét. A Fix és az Int függvény ezenkívül mindig a kapott értéknek megfelelő adattípust ad vissza.
Az IsDate függvénnyel meghatározhatja, hogy a dátum dátummá vagy idővé alakítható-e. A CDate felismeri a dátumkonstansokat és az időkonstansokat, valamint az elfogadható dátumtartományba eső számokat. Ha egy számot dátummá alakít át, a teljes számrész dátummá lesz konvertálva. A program a szám bármely törtrészét napidővé alakítja éjféltől kezdve.
A CDate függvény a számítógépen megadott területi beállítások alapján azonosítja a dátumformátumokat. Ha a beállított formátumtól eltérő módon adja meg a dátumot, előfordulhat, hogy a függvény nem tudja meghatározni az év, a hónap és nap megfelelő sorrendjét. A függvény szintén nem ismeri fel a hét napjai karakterláncot is tartalmazó dátumformátumokat.
A Visual Basic korábbi verzióival való kompatibilitást szolgálja a CVDate függvény. A CVDate függvény szintaxisa megegyezik a CDate függvényével, azonban a CVDate függvény egy Dátum altípussal rendelkező Variant eredményt ad vissza, nem pedig egy tényleges Dátum eredményt. Mivel a jelenlegi verzió belső Dátum típust tartalmaz, a CVDate függvényre már nincs szükség. Ugyanez az eredmény érhető el, ha a kifejezést Dátum típusúvá alakítjuk át, majd Variant értékhez rendeljük. Ez a megoldás azonos az összes belső típus megfelelő Variant altípusra történő konverziójával.
Megjegyzés: A CDec függvény nem diszkrét adattípust, hanem mindig Variant típusú eredményt ad vissza, amelynek értéke a Decimális altípusra lett átalakítva.
Példák lekérdezésre
Expression |
Eredmények |
---|---|
SELECT SalePrice,FinalPrice,CBool(SalePrice>FinalPrice) AS Expr1 FROM productSales; |
A "SalePrice", "FinalPrice" értéket adja vissza, és kiértékeli, hogy a SalePrice nagyobb-e a végleges árnál. A "-1" értéket adja vissza, ha igaz, a "0"-t, ha hamis. |
SELECT ProductID, CByte(Quantity) AS Expr1 FROM productSales; |
A "ProductID" értéket adja vissza, a "Mennyiség" mezőben szereplő értékeket bájtos formátumra konvertálja, és az Expr1 oszlopban a "ProductID" értéket adja vissza, a "Mennyiség" mező értékeit Pénznem formátumba konvertálja, és az Expr1 oszlopban jelenik meg. |
SELECT ProductID, CDate(DateofSale) AS Expr1 FROM productSales; |
A "ProductID" értéket adja vissza, a "DateofSale" mező értékeit Dátum formátumba konvertálja, és az Expr1 oszlopban jeleníti meg. |
SELECT ProductID, CDbl(Discount) AS Expr1 FROM productSales; |
A "ProductID" értéket adja vissza, a "Discount" (Kedvezmény) mezőben szereplő értékeket dupla formátumba konvertálja, és az Expr1 oszlopban jeleníti meg. |
SELECT ProductID, CInt(Discount) AS Expr1 FROM productSales; |
A "ProductID" értéket adja vissza, a "Discount" (Kedvezmény) mezőben szereplő értékeket Egész szám formátumba konvertálja, és az Expr1 oszlopban jeleníti meg. |
SELECT ProductID, CLng(Discount) AS Expr1 FROM productSales; |
A "ProductID" értéket adja vissza, a "Discount" (Kedvezmény) mezőben szereplő értékeket Hosszú formátumba konvertálja, és az Expr1 oszlopban jeleníti meg. |
SELECT ProductID, CSng(Discount) AS Expr1 FROM productSales; |
A "ProductID" értéket adja vissza, a "Discount" (Kedvezmény) mező értékeit Egyetlen formátumba konvertálja, és az Expr1 oszlopban jeleníti meg. |
SELECT ProductID, CStr(Discount) AS Expr1 FROM productSales; |
A "ProductID" értéket adja vissza, a "Discount" mező értékeit Sztring formátumba konvertálja, és az Expr1 oszlopban jeleníti meg. |
SELECT ProductID, CVar(Discount) AS Expr1 FROM productSales; |
A "ProductID" értéket adja vissza, a "Discount" (Kedvezmény) mezőben szereplő értékeket dupla értékké alakítja a numerikus értékeknél, a Sztringet pedig a Nem numerikus értékeknél. |
VBA-példák
Megjegyzés: A következő példák egy Visual Basic for Applications (VBA) modulban mutatják be a függvény használatát. A VBA használatával kapcsolatos további információkért lásd az Access VBA-referenciáját.
CBool függvény
Ez a példa a CBool függvénnyel Logikai értékké alakít egy kifejezést. Ha a kifejezés nullától különböző értéket eredményez, a CBool függvény Igaz értéket ad vissza, ellenkező esetben Hamis értéket.
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.
CByte függvény
Ez a példa a CByte függvénnyel Bájt értékké alakít egy kifejezést.
Dim MyDouble, MyByte
MyDouble = 125.5678 ' MyDouble is a Double.
MyByte = CByte(MyDouble) ' MyByte contains 126.
CCur függvény
Ez a példa a CCur függvénnyel Pénznem értékké alakít egy kifejezést.
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).
CDate függvény
Ez a példa a CDate függvénnyel Dátum értékké alakít egy karakterláncot. Általában nem érdemes karakterláncokként fixen kódolni a dátumokat és időpontokat (ahogy az a példában látható). Ehelyett használjon dátum- és időkonstansokat, például: #1969.02.12.# és #16:45:23#.
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)
CDbl függvény
Ez a példa a CDbl függvénnyel Dupla értékké alakít egy kifejezést.
Dim MyCurr, MyDouble
MyCurr = CCur(234.456784)
' Convert result to a Double.
MyDouble = CDbl(MyCurr * 8.2 * 0.01)
CDec függvény
Ez a példa a CDec függvénnyel Decimális értékké alakít egy számértéket.
Dim MyDecimal, MyCurr
MyCurr = 10000000.0587 ' MyCurr is a Currency.
MyDecimal = CDec(MyCurr) ' MyDecimal is a Decimal.
CInt függvény
Ez a példa a CInt függvénnyel Egész értékké alakít egy értéket.
Dim MyDouble, MyInt
MyDouble = 2345.5678 ' MyDouble is a Double.
MyInt = CInt(MyDouble) ' MyInt contains 2346.
CLng függvény
Ez a példa a CLng függvénnyel Hosszú értékké alakít egy értéket.
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.
CSng függvény
Ez a példa a CSng függvénnyel Egyszeres értékké alakít egy értéket.
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.
CStr függvény
Ez a példa a CStr függvénnyel Karakterlánc értékké alakít egy számértéket.
Dim MyDouble, MyString
MyDouble = 437.324 ' MyDouble is a Double.
MyString = CStr(MyDouble)
' MyString contains "437.324".
CVar függvény
Ez a példa a CVar függvénnyel Variant értékké alakít egy kifejezést.
Dim MyInt, MyVar
MyInt = 4534 ' MyInt is an Integer.
MyVar = CVar(MyInt & "000")
' MyVar contains the string 4534000.