Funkcije za pretvarjanje podatkovnih tipov

Funkcije za pretvarjanje podatkovnih tipov

Vsaka funkcija vsili izraz na določen podatkovni tip.

Sintaksa

CBool( izraz )

CByte( izraz )

CCur( izraz )

CDate( izraz )

CDbl( izraz )

CDec( izraz )

CInt( izraz )

CLng( izraz )

CSng( izraz )

CStr( izraz )

CVar( izraz )

Zahtevani izrazargument je kateri koli izraz niza ali številski izraz.

Tipi vrnitve

Ime funkcije določa tip vrnitve, kot je prikazano spodaj:

Funkcija

Tip vrnitve

Obseg za argument izraza

CBool

Logična vrednost

Kateri koli veljaven niz ali številski izraz.

CByte

Bajt

od 0 do 255.

CCur

Valuta

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

CDate

Datum

Kateri koli veljaven izraz datuma.

CDbl

Dvojno

-1.79769313486231E308 do
-4.94065645841247E-324 za negativne vrednosti; 4.94065645841247E-324 do 1.79769313486232E308 za pozitivne vrednosti.

CDec

Desetiško

+/-79,228,162,514,264,337,593,543,950,335 za cela števila. To so števila, brez decimalnih mest. Za števila z 28. decimalnimi mesti, je obseg
+/-7.9228162514264337593543950335. Najmanjše možno neničelno število je 0.0000000000000000000000000001.

CInt

Cela števila

-32,768 do 32,767; ulomki se zaokrožijo.

CLng

Dolgo

-2,147,483,648 do 2,147,483,647; ulomki se zaokrožijo.

CSng

Enojno

-3.402823E38 to -1.401298E-45 za negativne vrednosti; 1.401298E-45 to 3.402823E38 za pozitivne vrednosti.

CStr

Niz

Vrne za CStr glede na argument izraza.

CVar

Različica

Enak obseg kot ga ima izraz Dvojnoza števila. Enak obseg kot Niz za neštevila.


Opombe

Če je izraz, podan v funkciji, zunaj obsega podatkovnega tipa, ki se pretvarja, pride do napake.

Na splošno lahko kodo dokumentirate s funkcijami za pretvorbo podatkovnih tipov in prikažete, da mora biti rezultat neke operacije izražen kot določen podatkovni tip, namesto kot privzeti podatkovni tip. Uporabite na primer funkcijo CCur, da izsilite računanje valute v primerih, kjer bi običajno prišlo do računanja enojne natančnosti, dvojne natančnosti ali celega števila.

Uporabite funkcije za pretvorbo podatkovnega tipa namesto funkcije Val, da zagotovite mednarodne značilnosti pretvorbe iz enega podatkovnega tipa v drugega. Na primer, ko uporabite funkcijo CCur, se ustrezno prepoznajo različna decimalna ločila, različna ločila za tisočice in druge možnosti za valuto glede na področne nastavitve računalnika.

Ko je neceli del natančno 0,5, ga funkciji CInt in CLng vedno zaokrožita na najbližje sodo število. Na primer, 0,5 se zaokroži na 0, 1,5 pa na 2. Funkciji CInt in CLng se razlikujeta od funkcij Fix in Int, ki neceli del števila prej prirezujeta kot zaokrožujeta. Poleg tega funkciji Fix in Int vedno vrneta vrednost istega tipa kot je bila podana.

Uporabite funkcijo IsDate, da ugotovite, ali je datum mogoče pretvoriti v datum ali čas. Funkcija CDate prepozna datumske in časovne nize ter nekatere črke, ki so v obsegu sprejemljivih datumov. Ko pretvorite število v datum, se del s celim številom pretvori v datum. Neceli del števila se pretvori v čas z začetkom ob polnoči.

CDate prepozna oblike zapisa datuma v skladu z nastavitvijo mesta vašega sistema. Pravilni vrstni red dneva, meseca in leta morda ne bo določen, če ni podan v obliki zapisa prepoznanih nastavitev datuma. Poleg tega dolga oblika datuma ne bo prepoznana, če vsebuje niz dan-v-tednu.

Funkcija CVDate je na voljo tudi za združljivost s prejšnjimi različicami programa Visual Basic. Sintaksa funkcije CVDate je enaka funkciji CDate, pri čemer CVDate vrne Različico, katere podtip je Datum, namesto dejanskega tipa Datum. Ker je zdaj na voljo notranji podatkovni tip Datum, funkcija CVDate ni več potrebna. Enak učinek je mogoče doseči tako, da izraz pretvorite v Datum in ga nato dodelite Različici. Ta postopek je skladen s pretvorbo vseh drugih notranjih tipov v enakovredne podtipe Različice.

Opomba :  Funkcija CDec ne vrne ločenega podatkovnega tipa; namesto tega vedno vrne Različico, katere vrednost je bila pretvorjena v podtip Desetiško.

Primeri

Opomba : V spodnjih primerih je prikazana uporaba te funkcije v modulu Visual Basic for Applications (VBA). Če želite več informacij o delu z modulom VBA, izberite Vsebina za razvijalce na spustnem seznamu ob možnosti Iskanje in v iskalno polje vnesite enega ali več izrazov.

Funkcija CBool

Namig :  Graditelj izrazov s funkcionalnostjo IntelliSense v programu Access 2010 vam je v pomoč pri izbiri pravilnih izrazov.

V tem primeru je uporabljena funkcija CBool za pretvorbo izraza v logično vrednost. Če je izraz ovrednoten kot neničelna vrednost CBool vrne True; v nasprotnem primeru vrne 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.

Funkcija CByte

V tem primeru je uporabljena funkcija CByte za pretvorbo izraza v bajt.

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

Funkcija CCur

V tem primeru je uporabljena funkcija CCur za pretvorbo izraza v valuto.

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

Funkcija CDate

V tem primeru je uporabljena funkcija CDate za pretvorbo niza v datum. Na splošno zakodiranje datumov in časa kot nizov (kot je prikazano v tem primeru) ni priporočeno. Namesto tega uporabite datumske in časovne nize, na primer #2/12/1969 # in #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)

Funkcija CDbl

V tem primeru je uporabljena funkcija CDbl za pretvorbo izraza v dvojno.

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

Funkcija CDec

V tem primeru je uporabljena funkcija CDec za pretvorbo številske vrednosti v desetiško.

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

Funkcija CInt

V tem primeru je uporabljena funkcija CInt a pretvorbo vrednosti v celo število.

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

Funkcija CLng

V tem primeru je uporabljena funkcija CLng a pretvorbo vrednosti v dolgo.

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.

Funkcija CSng

V tem primeru je uporabljena funkcija CSng a pretvorbo vrednosti v enojno.

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.

Funkcija CStr

V tem primeru je uporabljena funkcija CStr za pretvorbo številske vrednosti v niz.

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

Funkcija CVar

V tem primeru je uporabljena funkcija CVar za pretvorbo izraza v različico.

Dim MyInt, MyVar
MyInt = 4534 ' MyInt is an Integer.
MyVar = CVar(MyInt & "000")
' MyVar contains the string 4534000.
Razširite svoja znanja
Oglejte si izobraževanje
Prvi dobite nove funkcije
Pridružite se programu Office Insider

Vam je bila informacija v pomoč?

Zahvaljujemo se vam za povratne informacije.

Zahvaljujemo se vam za povratne informacije. Videti je, da bi vam prišla prav pomoč enega od naših Officeovih agentov za podporo.

×