Applies ToMicrosoft 365 rakendus Access Access 2024 Access 2021 Access 2019 Access 2016

Iga funktsioon sunnib avaldis konkreetsele andmetüüp.

Süntaks

CBool( avaldis )

CByte( avaldis )

CCur( avaldis )

CDate( avaldis )

CDbl( avaldis )

CDec( avaldis )

CInt( avaldis )

CLng( avaldis )

CSng( avaldis )

CStr( avaldis )

CVar( avaldis )

Nõutav argument avaldis on suvaline stringavaldis või arvuline avaldis.

Tagastustüübid

Funktsiooni nimi määratleb tagastustüübi järgmiselt.

Funktsioon

Tagastustüüp

Argumendi expression vahemik

CBool

Kahendmuutuja

Suvaline sobiv string või arvavaldis.

CByte

Bait

0–255.

CCur

Valuuta

-922 337 203 685 477,5808 kuni 922 337 203 685 477,5807.

CDate

Kuupäev

Mis tahes sobiv kuupäevaavaldis.

CDbl

Topelttäpsusega arv

-1,79769313486231E308 kuni -4,94065645841247E-324 negatiivsete väärtuste puhul; Positiivsete väärtuste korral 4,94065645841247E-324 kuni 1,79769313486232E308.

CDec

Kümnendarv

+/-79 228 162 514 264 337 593 543 950 335 komakohtadeta arvudega. 28 komakohaga arvude puhul on vahemik +/-7.9228162514264337593543950335. Väikseim võimalik nullist erinev arv on 0,0000000000000000000000000001.

CInt

Täisarv

-32 768 kuni 32 767; kümnendmurrud ümardatakse.

CLng

Pikk

-2 147 483 648 kuni 2 147 483 647; kümnendmurrud ümardatakse.

CSng

Lihttäpsusega arv

-3,402823E38 kuni -1,401298E-45 negatiivsete ja 1,401298E-45 kuni 3,402823E38 positiivsete väärtuste korral.

CStr

String

Funktsiooni CStr tagastustüüp sõltub argumendist expression.

CVar

Variant

Arvväärtuste korral tüübi Topelttäpsusega arv vahemik. Muude väärtuste korral andmetüübi String vahemik.

Kommentaarid

Kui funktsioonile edastatud avaldis jääb väljapoole selle andmetüübi vahemikku, millesse teisendatakse, ilmneb tõrge.

Andmetüübiteisendusfunktsioonide abil saate dokumenteerida koodi ja määrata, et teatud toimingute tulemid väljendatakse kindla andmetüübi, mitte vaikeandmetüübina. Näiteks saate funktsiooni CCur abil käivitada valuutaarvutused juhtudel, kus tavaliselt kasutatakse ühese täpsusega, topelttäpsusega või täisarvulisi arvutusi.

Kui soovite ühe andmetüübi teisendamisel teiseks andmetüübiks kasutada rahvusvaheliselt tunnustatud teisendusi, on funktsiooni Val asemel soovitatav kasutada andmetüübiteisendusfunktsioone. Näiteks funktsiooni CCur kasutamisel tuvastatakse erinevad kümnenderaldajad, tuhandeliste eraldajad ja valuutasuvandid vastavalt arvuti piirkonnasätetele õigesti.

Kui murdosa on täpselt 0,5, ümardavad funktsioonid CInt ja CLng selle lähima paarisarvuni. Näiteks ümardatakse murd 0,5 arvuks 0 ja 1,5 arvuks 2. Funktsioonid CInt ja CLng erinevad funktsioonidest Fix ja Int, mille korral arvu murdosa ei ümardata, vaid kärbitakse. Lisaks sellele tagastavad funktsioonid Fix ja Int alati edastatud väärtusega sama tüüpi väärtuse.

Funktsiooni IsDate abil saate kindlaks määrata, kas argumendi date saab kuupäevaks või kellaajaks teisendada. Funktsioon CDate tuvastab nii kuupäeva- ja kellaajaliteraalid kui ka sobivate kuupäevade vahemikku jäävad arvud. Arvu teisendamisel kuupäevaks teisendatakse kuupäevaks kogu arvuosa. Arvu murdosa teisendatakse päeva ajaks, alustades arvestust keskööst.

Funktsioon CDate tuvastab kuupäevavormingud vastavalt süsteemi sättele lokaat. Funktsioon ei pruugi ära tunda päeva, kuu ja aasta õiget järjestust juhul, kui see on esitatud tuvastatavatest kuupäevavormingu sätetest erinevas vormingus. Lisaks sellele ei pruugita ära tunda nädalapäeva stringi sisaldavat pikka kuupäevavormingut.

Funktsioon CVDate ühildub ka Visual Basicu varasemate versioonidega. Funktsioonide CVDate ja CDate süntaksid on küll identsed, kuid funktsioon CVDate tagastab tegeliku tüübi Kuupäev asemel variandi, mille alamtüüp on Kuupäev. Tänu sisetüübi Kuupäev olemasolule pole funktsiooni CVDate enam vaja. Sama tulemuse annab avaldise teisendamine tüübiks Kuupäev ja selle sidumine variandiga. See vastab ka kõigi teiste sisetüüpide teisendamisele alamtüübi Variant ekvivalendiks.

Märkus.:  Funktsioon CDec ei tagasta diskreetset andmetüüpi, vaid tagastab alati variandi , mille väärtus on teisendatud alamtüübiks Kümnendarv.

Päringu näited

Avaldis

Tulemid

SELECT SalePrice,FinalPrice,CBool(SalePrice>FinalPrice) AS Avaldis1 FROM tootedMüük;

Tagastab väärtuse "SalePrice", "FinalPrice" ja hindab, kas SalePrice on suurem kui lõpphind. Tagastab "-1", kui see on tõene, ja "0", kui see on väär.

SELECT ProductID, CByte(Quantity) AS Expr1 FROM productSales;

Tagastab väärtuse "TooteID",teisendab välja "Kogus" väärtused baitide vormingusse ja kuvab veerus Avaldis1 Tagastab väärtuse "TooteID", teisendab välja "Kogus" väärtused valuutavormingusse ja kuvatakse veerus Avaldis1.

SELECT ProductID, CDate(DateofSale) AS Expr1 FROM productSales;

Tagastab väärtuse "ProductID",teisendab välja DateofSale väärtused kuupäevavormingusse ja kuvab veerus Avaldis1.

SELECT ProductID, CDbl(Discount) AS Expr1 FROM productSales;

Tagastab väärtuse "ProductID",teisendab välja "Discount" väärtused topeltvormingusse ja kuvatakse veerus Avaldis1.

SELECT ProductID, CInt(Discount) AS Expr1 FROM productSales;

Tagastab väärtuse "ProductID",teisendab välja "Discount" väärtused täisarvuvormingusse ja kuvab veerus Avaldis1.

SELECT ProductID, CLng(Discount) AS Expr1 FROM productSales;

Tagastab väärtuse "ProductID",teisendab välja "Discount" väärtused pikasse vormingusse ja kuvab veerus Expr1.

SELECT ProductID, CSng(Discount) AS Expr1 FROM productSales;

Tagastab väärtuse "ProductID",teisendab välja "Discount" väärtused üheks vorminguks ja kuvab veerus Expr1.

SELECT ProductID, CStr(Discount) AS Expr1 FROM productSales;

Tagastab väärtuse "ProductID",teisendab välja "Discount" väärtused stringivormingusse ja kuvab veerus Expr1.

SELECT ProductID, CVar(Discount) AS Expr1 FROM productSales;

Tagastab väärtuse "ProductID",teisendab välja "Discount" väärtused arvväärtuste korral topelttäpsusega arvulisteks väärtusteks ja stringiks Mittearvuliste väärtuste korral.

VBA näited

Märkus.: Järgmised näited kujutavad selle funktsiooni kasutamist rakenduse Visual Basic for Applications (VBA) moodulis. Lisateavet VBA-ga töötamise kohta leiate teemast Accessi VBA teatmematerjalid.

Funktsioon CBool

Selles näites kasutatakse funktsiooni CBool avaldise teisendamiseks kahendmuutujaks. Kui avaldis annab tulemiks nullist mittetühja väärtuse, tagastab funktsioon CBoolväärtuse True; muul juhul tagastab see väärtuse 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.

Funktsioon CByte

Näites kasutatakse funktsiooni CByte avaldise teisendamiseks tüübiks Bait.

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

Funktsioon CCur

Näites kasutatakse funktsiooni CCur avaldise teisendamiseks tüübiks Valuuta.

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).

Funktsioon CDate

Näites kasutatakse funktsiooni CDate stringi teisendamiseks kuupäevaks. Üldiselt ei ole soovitatav kasutada stringidena püsiprogrammeeritud kuupäevi ja kellaaegu (nagu näites). Kasutage selle asemel kuupäeva- ja kellaajaliteraale (nt #2/12/1969# ja #4:45:23 PL#).

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)

Funktsioon CDbl

Näites kasutatakse funktsiooni CDbl avaldise teisendamiseks tüübiks Topelttäpsusega arv.

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

Funktsioon CDec

Näites kasutatakse funktsiooni CDec arvväärtuse teisendamiseks tüübiks Kümnendarv.

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

Funktsioon CInt

Näites kasutatakse funktsiooni CInt väärtuse teisendamiseks tüübiks Täisarv.

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

Funktsioon CLng

Näites kasutatakse funktsiooni CLng väärtuse teisendamiseks tüübiks Pikk.

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.

Funktsioon CSng

Näites kasutatakse funktsiooni CSng väärtuse teisendamiseks tüübiks Lihttäpsusega arv.

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.

Funktsioon CStr

Näites kasutatakse funktsiooni CStr arvväärtuse teisendamiseks tüübiks String.

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

Funktsioon CVar

Näites kasutatakse funktsiooni CVar avaldise teisendamiseks tüübiks Variant.

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

Kas vajate veel abi?

Kas soovite rohkem valikuvariante?

Siin saate tutvuda tellimusega kaasnevate eelistega, sirvida koolituskursusi, õppida seadet kaitsma ja teha veel palju muud.

Kogukonnad aitavad teil küsimusi esitada ja neile vastuseid saada, anda tagasisidet ja saada nõu rikkalike teadmistega asjatundjatelt.