Typekonverteringsfunksjoner

Hver funksjon tvinger en uttrykk til et bestemt datatype.

Syntaks

CBool ( uttrykk )

CByte ( uttrykk )

CCur ( uttrykk )

CDate ( uttrykk )

CDbl ( uttrykk )

CDec ( uttrykk )

CInt ( uttrykk )

CLng ( uttrykk )

CSng ( uttrykk )

CStr ( uttrykk )

Cvar ( uttrykk )

Det nødvendige uttrykketargument er hvilken som helst strenguttrykk eller numerisk uttrykk.

Retur typer

Funksjons navnet bestemmer retur typen som vist i følgende:

Funksjon

Retur type

Område for uttrykk argument

CBool

Boolsk

Alle gyldige strenger eller numeriske uttrykk.

CByte

Byte

0 til 255.

CCur

Valuta

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

CDate

Dato

Et gyldig datauttrykk.

CDbl

Dobbel

-1.79769313486231 79769313486232e308 til
- -4 94065645841247e e-324 for negative verdier; -4 94065645841247e e-324 til -1 79769313486232e308 79769313486232E308 for positive verdier.

CDec

Desimal

+/-79228162514264337593543950335 for null skalerte tall, det vil si tall uten desimaler. For tall med 28 desimaler, er
området +/-7.9228162514264337593543950335. Det minste mulige tallet som ikke er null, er 0,0000000000000000000000000001.

CInt

Heltall

-32 768 til 32 767; brøker avrundes.

CLng

Tilhører

-2 147 483 648 til 2 147 483 647; brøker avrundes.

CSng

Enkel

-3, 402823e38 til- -1 401298e E-45 for negative verdier; -1 401298e e-45 til 3, 402823E38 for positive verdier.

CStr

Streng

CStr-returer avhenger av uttrykk -argumentet.

CVar

Duration

Samme spekter som Langt flyttall for numeriske verdier. Samme spekter som Streng for ikke-numeriske verdier.

Merknader

Hvis uttrykket som sendes til funksjonen, er utenfor området for data typen som konverteres til, oppstår det en feil.

Generelt kan du dokumentere koden ved hjelp av konverterings funksjonene for data typen for å vise at resultatet av en operasjon skal uttrykkes som en bestemt datatype i stedet for standard data typen. Du kan for eksempel bruke CCur til å fremtvinge valuta aritmetikk i tilfeller der enkel presisjon, dobbel presisjon eller hel talls aritmetikk vanligvis oppstår.

Du bør bruke konverterings funksjonene for data typene i stedet for Val til å gi internasjonalt klare konverteringer fra én datatype til en annen. Når du for eksempel bruker CCur, vil ulike desimal skille tegn, ulike tusen skille tegn og ulike valuta alternativer gjenkjennes på riktig måte, avhengig av den nasjonale innstillingen på data maskinen.

Når fraksjons delen er nøyaktig 0,5, runder ikke CInt og CLng av til nærmeste par tall. 0,5 runder for eksempel til 0, og 1,5 rundes av til 2. CInt og CLng er forskjellig fra Fix -og int -funksjonen, som trunkerer, i stedet for avrunde, fraksjons delen av et tall. I tillegg returnerer Fix og int alltid en verdi av samme type som sendes inn.

Bruk IsDate -funksjonen til å avgjøre om dato kan konverteres til en dato eller et klokkeslett. CDate gjenkjenner datolitteral og datolitteraler i tillegg til noen tall som faller innenfor området av akseptable datoer. Når du konverterer et tall til en dato, konverteres hele tall delen til en dato. Enhver brøk del av tallet konverteres til et tidspunkt på dagen, fra og med midnatt.

CDate gjenkjenner dato formater i henhold til nasjonal innstilling innstillingen for systemet. Riktig rekkefølge på dag, måned og år kan kanskje ikke fastslås hvis den er oppgitt i et annet format enn en av de gjenkjente dato innstillingene. I tillegg gjenkjennes ikke et langt dato format hvis det også inneholder strengen på uke dagen.

Du finner også en CVDate -funksjon for kompatibilitet med tidligere versjoner av Visual Basic. Syn tak sen for CVDate -funksjonen er identisk med CDate -funksjonen, men CVDate returnerer imidlertid en variant med en under type som er dato i stedet for en faktisk dato type. Siden det nå finnes en innebygd dato type, er det ikke lenger behov for CVDate. Den samme effekten kan oppnås ved å konvertere et uttrykk til en dato, og deretter tilordne det til en variant. Denne teknikken er konsekvent med konverteringen av alle andre innebygde typer for de tilsvarende variant -deltypene.

Obs!: CDec -funksjonen returnerer ikke en diskret datatype. i stedet returnerer det alltid en variant som har en verdi som er konvertert til en desimal under type.

Spørrings eksempler

Uttrykk

Resultater

Velg SalePrice, FinalPrice, CBool (SalePrice>FinalPrice) som Uttr1 fra productSales;

Returnerer "SalePrice", "FinalPrice" og evalueres hvis SalePrice er større enn endelig pris. Returnerer "-1" Hvis sann og "0" Hvis usann.

Velg ProductID, CByte (antall) som Uttr1 FROM productSales;

Returnerer «VareID» konverterer verdiene i "antall"-feltet til byte-format, og viser i kolonne Uttr1 returnerer "VareID", konverterer verdiene i «antall»-feltet til valuta format og vises i kolonne Uttr1.

Velg ProductID, CDate (DateofSale) som Uttr1 FROM productSales;

Returnerer "VareID", konverterer verdiene i «DateofSale»-feltet til dato format og vises i kolonne Uttr1.

Velg ProductID, CDbl (Discount) som Uttr1 FROM productSales;

Returnerer "VareID", konverterer verdiene i «rabatt»-feltet til dobbelt format og vises i kolonne Uttr1.

Velg ProductID, CInt (Discount) som Uttr1 FROM productSales;

Returnerer "VareID", konverterer verdiene i «rabatt»-feltet til hel talls format og vises i kolonne Uttr1.

Velg ProductID, CLng (Discount) som Uttr1 fra productSales;

Returnerer "VareID", konverterer verdiene i feltet "rabatt" til langt format og vises i kolonne Uttr1.

Velg ProductID, CSng (Discount) som Uttr1 FROM productSales;

Returnerer "VareID", konverterer verdiene i feltet "rabatt" til enkelt format og viser i kolonne Uttr1.

Velg ProductID, CStr (Discount) som Uttr1 FROM productSales;

Returnerer "VareID", konverterer verdiene i feltet "rabatt" til streng format og vises i kolonne Uttr1.

Velg ProductID, CVar (Discount) som Uttr1 FROM productSales;

Returnerer "VareID", konverterer verdiene i "Discount"-feltet til Double for numeriske verdier og streng for ikke-numeriske verdier.

Eksempler på VBA

Obs!: I eksemplene nedenfor vises bruken av denne funksjonen i en VBA-modul (Visual Basic for Applications). Hvis du vil ha mer informasjon om hvordan du arbeider med VBA, velger du Utviklerreferanse fra rullegardinlisten ved siden av Søk og skriver inn ett eller flere søkeord i søkeboksen.

CBool (funksjon)

Tips!:  Uttrykks verktøyet med IntelliSense som begynner i Access 2010, hjelper med å få uttrykkene dine rett.

I dette eksemplet brukes CBool -funksjonen til å konvertere et uttrykk til en boolsk verdi. Hvis uttrykket evalueres til en verdi som ikke er null, returnerer CBoolsann. ellers returneres Usann.

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 (funksjon)

I dette eksemplet brukes CByte -funksjonen til å konvertere et uttrykk til en byte.

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

CCur-funksjonen

I dette eksemplet brukes CCur -funksjonen til å konvertere et uttrykk til en valuta.

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

I dette eksemplet brukes CDate -funksjonen til å konvertere en streng til en dato. Vanligvis anbefales det ikke å fylle ut datoer og klokkeslett som strenger (som vist i dette eksemplet). Bruk datolitteral og tidslitteraler, for eksempel #2/12/1969 # og #4:45:23 PM # i stedet.

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

I dette eksemplet brukes CDbl -funksjonen til å konvertere et uttrykk til et langt flyt tall.

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

CDec (funksjon)

I dette eksemplet brukes CDec -funksjonen til å konvertere en numerisk verdi til en desimal.

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

CInt (funksjon)

I dette eksemplet brukes CInt -funksjonen til å konvertere en verdi til et hel tall.

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

CLng (funksjon)

I dette eksemplet brukes CLng -funksjonen til å konvertere en verdi til en lengde.

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 (funksjon)

I dette eksemplet brukes CSng -funksjonen til å konvertere en verdi til én.

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 (funksjon)

I dette eksemplet brukes CStr -funksjonen til å konvertere en numerisk verdi til en streng.

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

CVar (funksjon)

I dette eksemplet brukes cvar -funksjonen til å konvertere et uttrykk til en variant.

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

Obs!:  Denne siden er oversatt gjennom automatisering og kan inneholde grammatiske feil eller unøyaktigheter. Formålet vårt er at innholdet skal være nyttig for deg. Kan du fortelle oss om informasjonen var nyttig? Her er den engelske artikkelen for referanse.

Bli bedre på Office
Utforsk opplæring
Vær først ute med de nye funksjonene
Bli med i Office Insiders

Var denne informasjonen nyttig?

Takk for tilbakemeldingen!

Takk for tilbakemeldingen! Det høres ut som det kan være lurt å sette deg i kontakt med én av våre Office-kundestøtteagenter.

×