Typkonverteringsfunktioner

Varje funktion framtvingar en uttryck för en viss datatyp.

Syntax

KonvBool( uttryck )

KonvByte( uttryck )

KonvVal( uttryck )

KonvDatum( uttryck )

KonvDbl( uttryck )

CDec( uttryck )

KonvHel( uttryck )

KonvLng( uttryck )

KonvEnl( uttryck )

KonvStr( uttryck )

KonvVar( uttryck )

Det obligatoriska uttryckargument är valfri stränguttryck eller numeriskt uttryck.

Returtyper

Funktionsnamnet bestämmer returtypen enligt följande:

Funktion

Returtyp

Intervall för argument för uttryck

KonvBool

Boolean

Alla giltiga strängar och numeriska uttryck.

KonvByte

Byte

0 till 255

KonvVal

Currency

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

KonvDatum

Date

Ett giltigt datumuttryck.

KonvDbl

Double

-1,79769313486231E308 till
-4,94065645841247E-324 för negativa värden, 4,94065645841247E-324 till 1,79769313486232E308 för positiva värden.

CDec

Decimal

+/-79 228 162 514 264 337 593 543 950 335 för tal med skala noll, d.v.s. tal utan decimaler. För tal med 28 decimaler är det giltiga värdeintervallet
+/-7,9228162514264337593543950335. Det minsta möjliga positiva talet som är större än noll är 0,0000000000000000000000000001.

KonvHel

Integer

-32 768 till 32 767. Decimaler avrundas.

KonvLng

Long

-2 147 483 648 till 2 147 483 647. Decimaler avrundas.

KonvEnl

Single

-3,402823E38 till -1,401298E-45 för negativa värden och 1,401298E-45 till 3,402823E38 för positiva värden.

KonvStr

String

Returvärden för KonvStr beror på argumentet uttryck.

KonvVar

Variant

Samma intervall som Double för numeriska värden. Samma intervall som String för icke-numeriska värden.


Anmärkningar

Om uttryck som skickas till funktionen ligger utanför intervallet för den datatyp som det ska konverteras till uppstår ett fel.

I allmänhet kan du dokumentera din kod genom att använda konverteringsfunktioner för datatyper för att visa att resultatet av en åtgärd ska uttryckas som en specifik datatyp i stället för standarddatatypen. Du kan till exempel använda KonvVal för att påtvinga valutaberäkningar i fall där det normalt skulle användas beräkningar med enkel precision, dubbel precision eller heltal.

Du bör använda konverteringsfunktioner för datatyper i stället för TeckenNum för att tillhandahålla konverteringar från en datatyp till en annan som fungerar i olika länder. När du till exempel använder KonvVal, olika decimaltecken, olika tusentalsavgränsare och olika valutaalternativ identifieras de korrekt enligt de nationella inställningarna på datorn.

Om decimaldelen är exakt 0,5 avrundar KonvHel och KonvLng alltid till närmaste jämna tal. Till exempel avrundas 0,5 till 0 och 1,5 till 2. KonvHel och KonvLng skiljer sig från funktionerna Fasttal och Heltal, som avkortar, inte avrundar, decimaldelen av ett tal. Fasttal och Heltal returnerar också alltid ett värde av samma typ som det som skickats till funktionen.

Använd funktionen ÄrDatum för att avgöra om datum kan konverteras till datum eller klockslag. KonvDatum identifierar både datumformat, tidformat och vissa tal som faller inom intervallet för godtagbara datum. När ett tal konverteras till ett datum konverteras hela heltalsdelen till ett datum. Eventuell decimaldel konverteras till ett klockslag, räknat från midnatt.

KonvDatum identifierar datumformats enligt inställningen språk på datorn. Korrekt ordning på dag, månad och år kanske inte går att avgöra om det anges i ett annat format än någon av de korrekta inställningarna för datum. Dessutom kan ett långt datumformat inte identifieras om det även innehåller en veckodagssträng.

Funktionen KonvVDatum tillhandahålls också för kompatibilitet med tidigare versioner av Visual Basic. Funktionen KonvVDatum har exakt samma syntax som funktionen KonvDatum, men KonvVDatum returnerar datatypen Variant med undertypen Date i stället för datatypen Date. Eftersom det numera finns en inbyggd Date-datatyp finns det inte längre något behov av KonvVDatum. Samma effekt kan uppnås genom att konvertera ett uttryck till Date och sedan tilldela det datatypen Variant. Denna teknik är konsekvent med konvertering av alla andra inbyggda datatyper till motsvarande Variant-undertyper.

Obs!:  Funktionen CDec returnerar inte en diskret datatyp. I stället returneras alltid en Variant vars värde har konverterats till undertypen Decimal.

Exempel

Obs!: I exemplen nedan visar vi hur du använder den här funktionen i en Visual Basic for Applications-modul (VBA). Om du vill läsa mer om hur man använder VBA, kan du välja Info för utvecklare i listrutan bredvid Sök och sedan skriva en eller flera söktermer i sökrutan.

Funktionen KonvBool

Tips:  Uttrycksverktyget med IntelliSense från och med Access 2010 hjälper dig att få ditt uttryck rätt.

Det här exemplet använder funktionen KonvBool för att konvertera ett uttryck till datatypen Boolean. Om uttrycket utvärderas till ett nollskilt värde returnerar KonvBoolSant, annars returneras Falskt.

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.

Funktionen KonvByte

Det här exemplet använder funktionen KonvByte för att konvertera ett uttryck till datatypen Byte.

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

Funktionen KonvVal

Det här exemplet använder funktionen KonvVal för att konvertera ett uttryck till datatypen 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).

Funktionen KonvDatum

Det här exemplet använder funktionen KonvDatum för att konvertera ett uttryck till datatypen Date. I allmänhet rekommenderas det inte att hårdkoda datum och klockslag som strängar (som i det här exemplet). Använd i stället datum- och tidformat som #1969-02-12# och #16:45:23#.

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)

Funktionen KonvDbl

Det här exemplet använder funktionen KonvDbl för att konvertera ett uttryck till datatypen Double.

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

Funktionen CDec

Det här exemplet använder funktionen CDec för att konvertera ett numeriskt värde till datatypen Decimal.

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

Funktionen KonvHel

Det här exemplet använder funktionen KonvHel för att konvertera ett värde till datatypen Integer.

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

Funktionen KonvLng

Det här exemplet använder funktionen KonvLng för att konvertera ett värde till datatypen 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.

Funktionen KonvEnl

Det här exemplet använder funktionen KonvHel för att konvertera ett värde till datatypen 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.

Funktionen KonvStr

Det här exemplet använder funktionen KonvStr för att konvertera ett numeriskt värde till datatypen String.

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

Funktionen KonvVar

Det här exemplet använder funktionen KonvVar för att konvertera ett uttryck till datatypen Variant.

Dim MyInt, MyVar
MyInt = 4534 ' MyInt is an Integer.
MyVar = CVar(MyInt & "000")
' MyVar contains the string 4534000.
Utöka dina kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Office Insiders

Hade du nytta av den här informationen?

Tack för din feedback!

Tack för din feedback! Det låter som att det kan vara bra att koppla dig till en av våra Office-supportrepresentanter.

×