Minden függvény egy kifejezést alakít át meghatározott adattípusúvá.
Szintaxis
CBool(expression)CByte(expression)CCur(expression)CDate(expression)CDbl(expression)CDec(expression)CInt(expression)CLng(expression)CSng(expression)CStr(expression)CVar(expression)
Kötelező argumentum expression tetszőleges karakterlánc vagy numerikus kifejezés.
A visszaadott eredmény típusa
A visszaadott eredményt a függvény neve határozza meg, az alábbi táblázatban látható módon:
| Függvény | A visszaadott eredmény típusa | Argumentum tartománya expression |
|---|---|---|
CBool |
Boolean |
Bármely érvényes karakterlánc vagy numerikus kifejezés. |
CByte |
Byte |
0nak neki.255 |
CCur |
Currency |
-922,337,203,685,477.5808nak neki.922,337,203,685,477.5807 |
CDate |
Date |
Bármely érvényes dátum típusú kifejezés. |
CDbl |
Double |
-1.79769313486231E308 negatív -4.94065645841247E-324 értékekre; 4.94065645841247E-324 pozitív értékekre 1.79769313486232E308 . |
CDec |
Decimal |
+/-79,228,162,514,264,337,593,543,950,335 nullskálás vagy tizedesjegyet nem tartalmazó számok esetén. A tizedesjegyeket tartalmazó 28 számok tartománya a következő: +/-7.9228162514264337593543950335. A nullától eltérő legkisebb szám a 0.0000000000000000000000000001. |
CInt |
Integer |
-32,768 to 32,767; a törtek kerekítve. |
CLng |
Long |
-2,147,483,648 to 2,147,483,647; a törtek kerekítve. |
CSng |
Single |
-3.402823E38 negatív -1.401298E-45 értékekre; 1.401298E-45 pozitív értékekre 3.402823E38 . |
CStr |
String |
A visszatérési érték az argumentumtól expression függ. |
CVar |
Variant |
Ugyanaz a tartomány, mint a Double számértékeknél. Ugyanaz a tartomány, mint a String nem numerikus értékeknél. |
Megjegyzések
Ha a függvénynek átadott érték expression azon adattípus tartományán kívül esik, amelyre konvertálni kíván, hiba történik.
Adattípus-konverziós függvények használatával általában dokumentálhatja a kódot, amely megjeleníti, hogy egy művelet eredményeként az alapértelmezett adattípus helyett egy adott adattípust kell használnia. Például CCur pénznem megjelenítésére használható olyan esetben, amikor egyszeres pontosságú, kétszeres pontosságú vagy egész érték szerepelne.
Az adattípus-konverziós függvények használata helyett Val területi beállításokat figyelembe vevő konverziók biztosításához az adattípusok között. Ha például CCura , az Access a különböző tizedesjegyeket, ezreselválasztókat és pénznembeállításokat ismer fel a számítógép területi beállításai alapján.
Amikor a törtrész pontosan 0.5, CInt és CLng mindig a legközelebbi páros számra kerekítse. A 0.5 kerekített érték például a következőre 0: , majd 1.5 kerekít erre: 2.
CInt és különbözik CLng az Fix ÉS Int függvényektől, amelyek a számok tört részét kerekítés helyett csonkolják.
Fix és Int emellett mindig ugyanolyan típusú értéket kell visszaadnia, mint amit átad.
A IsDate függvény segítségével megállapíthatja, hogy date dátummá vagy időponttá alakítható-e.
CDate Felismeri a dátum- és időkonstansokat, valamint a megengedett dátumtartományba eső egyes számokat. Amikor egy számot dátummá alakít, az egész szám részből dátum lesz. Minden törtrész éjfélkor kezdődő napszak lesz.
CDate Felismeri a dátumformátumokat a rendszer területi beállításai szerint. Előfordulhat, hogy az Access nem tudja meghatározni a nap, a hónap és az év helyes sorrendjét, ha a beállított formátumtól eltérő formátumot ad meg. Ezenkívül nem ismeri fel a hosszú dátumformátumot, ha a hét napjai karakterláncot is tartalmazza.
A CVDate függvény a Visual Basic korábbi verzióival való kompatibilitás érdekében is elérhető. Az OF CVDate szintaxisa megegyezik a függvény CDate szintaxisával. Azonban CVDate egy olyan értéket ad vissza, Variant amelynek az altípusa van, Date nem pedig tényleges Date típust. Mivel az Access belső típust Date tartalmaz, a továbbiakban nincs szükség .CVDate Ugyanezt a hatást érheti el, ha egy kifejezést "a" Date típusúra alakít, majd hozzárendeli egy Variant. Ez a technika összhangban van más belső típusok ekvivalens Variant altípusaikká történő átalakításával.
Megjegyzés
A CDec függvény nem ad vissza különálló adattípust. Ehelyett mindig olyan értéket Variant ad vissza, amelynek az értéke altípussá Decimal lett konvertálva.
Példák lekérdezésekre
| Expression | Eredmények |
|---|---|
SELECT SalePrice, FinalPrice, CBool(SalePrice > FinalPrice) AS Expr1 FROM productSales; |
Visszatérési értéke SalePrice és FinalPrice, és kiértékeli, hogy nagyobb-e, SalePrice mint FinalPrice. Eredménye -1 az, ha igaz és hamis 0 . |
SELECT ProductID, CByte(Quantity) AS Expr1 FROM productSales; |
Visszatérési értéke ProductID, a mező értékeit Quantity a formátumba Bytekonvertálja, és megjeleníti őket az Expr1 oszlopban. |
SELECT ProductID, CDate(DateofSale) AS Expr1 FROM productSales; |
Visszatérési értéke ProductID, a mező értékeit DateofSale a formátumba Datekonvertálja, és megjeleníti őket az Expr1 oszlopban. |
SELECT ProductID, CDbl(Discount) AS Expr1 FROM productSales; |
Visszatérési értéke ProductID, a mező értékeit Discount a formátumba Doublekonvertálja, és megjeleníti őket az Expr1 oszlopban. |
SELECT ProductID, CInt(Discount) AS Expr1 FROM productSales; |
Visszatérési értéke ProductID, a mező értékeit Discount a formátumba Integerkonvertálja, és megjeleníti őket az Expr1 oszlopban. |
SELECT ProductID, CLng(Discount) AS Expr1 FROM productSales; |
Visszatérési értéke ProductID, a mező értékeit Discount a formátumba Longkonvertálja, és megjeleníti őket az Expr1 oszlopban. |
SELECT ProductID, CSng(Discount) AS Expr1 FROM productSales; |
Visszatérési értéke ProductID, a mező értékeit Discount a formátumba Singlekonvertálja, és megjeleníti őket az Expr1 oszlopban. |
SELECT ProductID, CStr(Discount) AS Expr1 FROM productSales; |
Visszatérési értéke ProductID, a mező értékeit Discount a formátumba Stringkonvertálja, és megjeleníti őket az Expr1 oszlopban. |
SELECT ProductID, CVar(Discount) AS Expr1 FROM productSales; |
Eredménye ProductID, numerikus Discount értékek átalakítása Double, a nem numerikus értékek átalakítása Stringpedig . |
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áról az Access VBA dokumentációjában talál további információt.
CBool függvény
Ez a példa a CBool függvénnyel Boolean. Ha a kifejezés nullától különböző értéket eredményez, akkor CBool a függvény a "Contrast" értéket adja visszaFalseTrue.
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 Byte.
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 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).
CDate függvény
Ez a példa a CDate függvénnyel Date. Általában nem ajánlott karakterláncokként fixen kódolni a dátumokat és időpontokat, ahogyan az a példában látható. Ehelyett dátum- és időkonstansokat használjon, például #2/12/1969# az és #4:45:23 PM#és helyett.
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 Double.
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 egy numerikus értéket .Decimal
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 Integer.
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 .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.
CSng függvény
Ez a példa a CSng függvénnyel .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.
CStr függvény
Ez a példa a CStr függvénnyel egy numerikus értéket .String
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.
Dim MyInt, MyVar
MyInt = 4534 ' MyInt is an Integer.
MyVar = CVar(MyInt & "000")
' MyVar contains the string 4534000.