Kirjaudu sisään Microsoft-tilillä
Kirjaudu sisään tai luo tili.
Hei,
Käytä toista tiliä.
Sinulla on useita tilejä
Valitse tili, jolla haluat kirjautua sisään.

Kukin funktio pakottaa lauseken tiettyyn tietotyyppieen.

Syntaksi

CBool( expression )

CByte( expression )

CCur( expression )

CDate( expression )

CDbl( expression )

CDec( expression )

CInt( expression )

CLng( expression )

CSng( expression )

CStr( expression )

CVar( expression )

Pakollinen expressionargumentti-argumentti on mikä tahansa merkkijonolauseke tai numeerinen lauseke.

Palautustyypit

Funktion nimi määrää palautustypin seuraavasti:

Funktio

Palautustyyppi

Alue expression -argumentille

CBool

Totuusarvo

Mikä tahansa kelvollinen merkkijono tai numeerinen lauseke.

CByte

Tavu

0–255.

CCur

Valuutta

-922,337,203,685,477.5808– 922,337,203,685,477.5807.

CDate

Päivämäärä

Mikä tahansa kelvollinen päivämäärälauseke.

CDbl

Double-tietotyyppi

-1.79769313486231E308 kohteeseen
-4,94065645841247E-324 negatiivisille arvoille; 4.94065645841247E-324 – 1,79769313486232E308 positiivisille arvoille.

CDec

Desimaali

+/-79 228 162 514 264 337 593 543 950 335 pyöristetyille numeroille eli numeroille, joissa ei ole desimaalipaikkoja. Jos luku on 28 desimaalia, alue on
+/-7.9228162514264337593543950335. Pienin mahdollinen nollasta poikkeava numero on 0,0000000000000000000000000001.

CInt

Kokonaisluku

-32,768–32 767; murtoluvut pyöristetään.

CLng

Pitkä

-2,147,483,648–2,147,483,647; murtoluvut pyöristetään.

CSng

Single-tietotyyppi

-3,402823E38–-1,401298E-45 negatiivisille arvoille; 1,401298E-45–3,402823E38 positiivisille arvoille.

CStr

Merkkijono

Palauttaa CStr expression-argumentin mukaan.

CVar

Muuttuja

Sama alue kuin Double-tietotyyppi numeerisille arvoille. Sama alue kuin tyypin Merkkijono ei-numeerisille.

Huomautuksia

Jos funktioon siirretty expression-argumentti on muunnettavan tietotyypin alueen ulkopuolella, tapahtuu virhe.

Voit yleensä kirjata koodin tietotyypin muuntofunktioiden avulla sen näyttämiseksi, että joidenkin operaatioiden tulos olisi ilmaistava tiettynä tietotyyppinä oletustietotyypin sijasta. Voit esimerkiksi käyttää CCur-funktiota valuutta-aritmetiikan pakottamiseksi tapauksissa, joissa käytetään tavallisesti Single-tietotyypin tarkkuutta, Double-tietotyypin tarkkuutta tai kokonaisluvun aritmetiikkaa.

Val-funktion sijasta olisi käytettävä tietotyypin muuntofunktioita kansainvälisten muuntojen suorittamiseksi yhdestä tietotyypistä toiseen. Esimerkiksi kun käytät CCur-funktiota, eri desimaalierottimet, eri tuhaterottimet ja erilaiset valuuttaoptiot tunnistetaan oikein tietokoneen kieliasetuksen mukaan.

Kun murto-osa on täsmälleen 0,5, CInt- ja CLng-funktiot pyöristävät sen aina lähimpään parilliseen lukuun. Esimerkiksi 0,5 pyöristetään lukuun 0 ja 1,5 pyöristetään lukuun 2. CInt- ja CLng-funktiot eroavat Fix- ja Int-funktioista, jotka katkaisevat luvun murto-osan sen pyöristämisen sijasta. Lisäksi Fix- ja Int-funktiot palauttavat aina saman tyypin arvon kuin siirrossa.

Voit IsDate-funktion avulla määrittää, voidaanko päivämäärä muuntaa päivämääräksi vai kellonajaksi. CDate-funktio tunnistaa päivämääräliteraalit ja aikaliteraalit samoin kuin jotkin luvut, jotka ovat hyväksyttävien päivämäärien alueen sisällä. Kun muunnat luvun päivämääräksi, kokonaisluvun osa muunnetaan päivämääräksi. Luvun jokainen murto-osa muunnetaan tiettyyn kellonaikaan alkaen keskiyöstä.

CDate-funktio tunnistaa päivämäärämuodot järjestelmän aluekohtaiset asetukset-asetuksen mukaan. Päivän, kuukauden ja vuoden oikeaa järjestystä ei voida ehkä määrittää, jos se on annettu jossakin toisessa muodossa kuin päivämääräasetuksissa tunnistetussa muodossa. Lisäksi pitkää päivämäärämuotoa ei tunnisteta, jos se sisältää myös viikonpäivä-merkkijonon.

CVDate-funktio tarjoaa myös yhteensopivuuden Visual Basicin aiempien versioiden kanssa. CVDate-funktion syntaksi on identtinen CDate-funktion kanssa, mutta CVDate palauttaa variantin, jonka alatyyppi on Päivämäärä todellisen Päivämäärä-tyypin sijaan. Koska päivämäärätyyppi on nyt itseisarvo, CVDate-päivämäärää ei enää tarvita. Sama vaikutus voidaan saavuttaa muuntamalla lauseke päivämääräksi ja määrittämällä se sitten variantille. Tämä tekniikka on yhdenmukainen kaikkien muiden itseisarvotyyppien muuntamisen kanssa vastaaviksi Variantti-alatyypeiksi .

Huomautus:  CDec-funktio ei palauta erillistä tietotyyppiä vaan se palauttaa aina Variant-tyypin, jonka arvo on muunnettu Decimal-alatyypiksi.

Esimerkkejä kyselystä

Lauseke

Tulokset

SELECT SalePrice,FinalPrice,CBool(SalePrice>FinalPrice) AS Expr1 FROM productSales;

Palauttaa "Myyntihinta", "LopullinenHinta" ja arvioi, onko Myyntihinta suurempi kuin Lopullinen hinta. Palauttaa arvon "-1", jos tosi, ja "0", jos epätosi.

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

Palauttaa "Tuotetunnus",muuntaa Määrä-kentän arvot tavumuotoon ja näyttää sarakkeessa Lauseke1 Palauttaa "Tuotetunnus",muuntaa Määrä-kentän arvot Valuutta-muotoon ja näkyy sarakkeessa Lauseke1.

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

Palauttaa "Tuotetunnus",muuntaa DateofSale-kentän arvot Päivämäärä-muotoon ja näkyy sarakkeessa Lauseke1.

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

Palauttaa "Tuotetunnus",muuntaa "Alennus"-kentän arvot Double-muotoon ja näkyy sarakkeessa Lauseke1.

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

Palauttaa "Tuotetunnus",muuntaa "Alennus"-kentän arvot kokonaislukumuotoon ja näkyy sarakkeessa Lauseke1.

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

Palauttaa "Tuotetunnus",muuntaa "Alennus"-kentän arvot Pitkä-muotoon ja näkyy sarakkeessa Lauseke1.

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

Palauttaa "Tuotetunnus",muuntaa "Alennus"-kentän arvot yhdeksi muodoksi ja näkyy sarakkeessa Lauseke1.

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

Palauttaa "Tuotetunnus",muuntaa "Alennus"-kentän arvot merkkijonomuotoon ja näkyy sarakkeessa Lauseke1.

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

Palauttaa "Tuotetunnus",muuntaa Alennus-kentän arvot double-arvoiksi numeerisille arvoille ja Merkkijono ei-numeerisille arvoille.

VBA-esimerkkejä

Huomautus: Seuraavissa esimerkeissä kerrotaan, kuinka tätä funktiota käytetään Visual Basic for Applications (VBA) -moduulissa. Lisätietoja VBA:n käsittelemisestä on artikkelissa Access VBA -viittaus.

CBool-funktio

Tässä esimerkissä CBool-funktiota käytetään muuntamaan lauseke totuusarvoksi. Jos lauseke laskee muun kuin nolla-arvon, CBool palauttaa Tosi; muussa tapauksessa se palauttaa Epätosi.

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-funktio

Tässä esimerkissä käytetään CByte-funktiota muuntamaan lauseke tavuksi.

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

CCur-funktio

Tässä esimerkissä käytetään CCur-funktiota muuntamaan lauseke valuutaksi.

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-funktio

Tässä esimerkissä käytetään CDate-funktiota muuntamaan merkkijono päivämääräksi. Yleensä päivämäärien ja aikojen kiinteää koodausta merkkijonoiksi (kuten tässä esimerkissä) ei suositella. Käytä sen sijaan päivämääräliteraaleja ja aikaliteraaleja, kuten #2/12/1969# ja #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)

CDbl-funktio

Tässä esimerkissä käytetään CDbl-funktiota muuntamaan lauseke Double-tietotyypiksi.

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

CDec-funktio

Tässä esimerkissä käytetään CDec-funktiota muuntamaan numeerinen arvo desimaaliksi.

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

CInt-funktio

Tässä esimerkissä käytetään CInt-funktiota muuntamaan arvo kokonaisluvuksi.

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

CLng-funktio

Tässä esimerkissä käytetään CLng-funktiota muuntamaan arvo pitkäksi.

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-funktio

Tässä esimerkissä käytetään CSng-funktiota muuntamaan arvo Single-tietotyypiksi.

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-funktio

Tässä esimerkissä käytetään CStr-funktiota muuntamaan arvo merkkijonoksi.

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

CVar-funktio

Tässä esimerkissä käytetään CVar-funktiota muuntamaan lauseke muuttujaksi.

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

Tarvitsetko lisäohjeita?

Haluatko lisää vaihtoehtoja?

Tutustu tilausetuihin, selaa harjoituskursseja, opi suojaamaan laitteesi ja paljon muuta.

Osallistumalla yhteisöihin voit kysyä kysymyksiä ja vastata niihin, antaa palautetta sekä kuulla lisää asiantuntijoilta, joilla on runsaasti tietoa.

Oliko näistä tiedoista hyötyä?

Kuinka tyytyväinen olet käännöksen laatuun?
Mikä vaikutti kokemukseesi?
Kun valitset Lähetä, palautettasi käytetään Microsoftin tuotteiden ja palveluiden parantamiseen. IT-järjestelmänvalvojasi voi kerätä nämä tiedot. Tietosuojatiedot.

Kiitos palautteesta!

×