Funkcje konwersji typów

Ważne : Ten artykuł został przetłumaczony maszynowo, zobacz zastrzeżenie. Angielskojęzyczną wersję tego artykułu można znaleźć tutaj .

Każda funkcja wymusza traktowanie wyrażenie do określonych typ danych.

Składnia

CBool ( wyrażenie )

CByte ( wyrażenia )

CCur ( wyrażenie )

CDate ( wyrażenie )

CDbl ( wyrażenia )

CDec ( wyrażenia )

CInt ( wyrażenia )

CLng ( wyrażenie )

CSng ( wyrażenia )

CStr ( wyrażenie )

CVar ( wyrażenie )

Wymagane wyrażeniaargument jest dowolnym wyrażenie tekstowe lub wyrażenie numeryczne.

Typy zwrotów

Nazwa funkcji określa zwracany typ, jak pokazano poniżej:

Funkcja

Zwracany typ

Zakres wyrażenie argument

CBool

Boolean

Prawidłowe Parametry lub wyrażenie liczbowe.

CByte

Byte

od 0 do 255.

CCur

Waluta

-922,337,203,685,477.5808 do 922337203685477,5807.

CDate

Data

Dowolne prawidłowe wyrażenie daty.

CDbl

Double

-1, 79769313486231E308 do
-4, 94065645841247E-324 dla wartości ujemnych; 4, 94065645841247E-324 do 1, 79769313486232E308 dla wartości dodatnich.

CDec

Decimal

+/-79,228,162,514,264,337,593,543,950,335 numerów skalowany zero, oznacza to, że liczby bez miejsc dziesiętnych. W przypadku liczb z 28 miejscami po przecinku, zakres jest
+/-7.9228162514264337593543950335. Najmniejszą liczbą zera to 0,0000000000000000000000000001.

CInt

Liczba całkowita

-32 768 do 32 767; ułamki są zaokrąglane.

CLng

Długie

-2,147,483,648 do 2 147 483 647; ułamki są zaokrąglane.

CSng

Single

-3, 402823E38 do - 1, 401298E-45 dla wartości ujemnych; 1, 401298E-45 do 3, 402823E38 dla wartości dodatnich.

CStr

Ciąg

Zwraca CStr zależą od argumentu wyrażenia .

CVar

Wariant

Ten sam zakres jako podwójne numeryczne. Ten sam zakres jako ciąg nieliczbowych.


Spostrzeżenia

Jeśli wyrażenie przekazane do funkcji jest spoza zakresu typu danych są konwertowane na, wystąpi błąd.

Zazwyczaj można udokumentować kod przy użyciu funkcji konwersji typów danych, aby pokazać, że wynik pewnej operacji powinien być wyrażony jako konkretny typ danych, a nie jako domyślny typ danych. Na przykład za pomocą CCur wymusić waluty arytmetyczne w przypadkach, gdy pojedynczej precyzji, podwójnej precyzji lub liczba całkowita arytmetyczne zwykle mogą się pojawić.

Funkcje konwersji typów danych należy używać zamiast Val zapewnienie uwzględnia ustawienia regionalne konwersji z jednego typu danych do innego. Na przykład, gdy używasz CCur, różne separatory dziesiętne, separatory tysięcy i różne opcje walutowe są rozpoznawane poprawnie w zależności od ustawień regionalnych komputera.

Jeśli część ułamkowa jest dokładnie 0,5, CInt i CLng zawsze zaokrąglać go do najbliższej liczby parzystej. Na przykład wartość 0,5 zostanie zaokrąglona do 0, a wartość 1,5 zaokrągla liczbę 2. CInt i CLng różnią się od funkcji Fix i Int , które należy obciąć zamiast zaokrąglić, część ułamkowa liczby. Ponadto Fix i Int zawsze zwraca wartość tego samego typu jak przekazywana w.

Funkcja IsDate umożliwia określenie, jeśli Data można konwertować na datę lub godzinę. CDate rozpoznaje literałów dat i godzin, a także niektóre liczby, które odpowiadają zakresowi daty przyjęcia. Podczas konwertowania liczby do daty, część ułamkowa liczby jest konwertowana na datę. Dowolną część ułamkowa liczby jest konwertowana na godziny, począwszy od północy.

CDate rozpoznaje formaty daty zgodnie z ustawieniami ustawienia regionalne systemu. Nie można określić kolejność dzień, miesiąc i rok, jeśli jest dostępny w formacie innym niż jeden z rozpoznawanych ustawień daty. Ponadto format daty długiej nie został rozpoznany, jeśli dodatkowo zawiera ciąg dnia tygodnia.

Zgodność z poprzednimi wersjami programu Visual Basic jest również dostępna funkcja CVDate . Składnia funkcji CVDate jest identyczny z funkcji CDate , jednak CVDate zwraca Wariant której podtyp to Data zamiast rzeczywisty typ daty . Ponieważ jest teraz wewnętrzne typ daty , nie ma już potrzeby CVDate. Ten sam efekt można osiągnąć, konwertując wyrażenie daty, a przypisując do wariantu. Ta metoda jest spójna z konwersją wszystkich innych typów wewnętrznych na jej równowartość podtypy Wariant .

Uwaga : Funkcja CDec nie zwraca dyskretnego typu danych; Zamiast tego zawsze zwraca Wariant której wartość przekonwertowaną na dziesiętną podtyp.

Przykłady

Uwaga : Poniższe przykłady przedstawiają sposób użycia tej funkcji w module języka Visual Basic for Applications (VBA). Aby uzyskać dodatkowe informacje na temat pracy w języku VBA, wybierz pozycję Dokumentacja dewelopera z listy rozwijanej obok przycisku Wyszukaj i wprowadź odpowiednie terminy w polu wyszukiwania.

Funkcja CBool

Porada : Konstruktor wyrażeń IntelliSense zaczyna się w programie Access 2010 umożliwia wprowadzenie wyrażenia w prawo.

W tym przykładzie użyto funkcji CBool , aby przekonwertować wyrażenie logiczne. Jeśli wyrażenie ma wartość różną od zera, CBool zwraca wartość PRAWDA; w przeciwnym razie zwraca wartość 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.

Funkcja CByte

W tym przykładzie użyto funkcji CByte do przekonwertowania wyrażenia na bajt.

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

Funkcja CCur

W tym przykładzie użyto funkcji CCur do przekonwertowania wyrażenia waluty.

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

Funkcja CDate

W tym przykładzie użyto funkcji CDate , aby przekonwertować ciąg na datę. Na ogół słabo kodowania daty i godziny jako ciągi (jak pokazano w tym przykładzie) nie jest zalecane. Za pomocą literałów dat i godzin, takie jak #2/12/1969 # i # 4:45:23 PM #, zamiast tego.

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)

Funkcja CDbl

W tym przykładzie użyto funkcji CDbl do przekonwertowania wyrażenia na podwójną.

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

Funkcja CDec

W tym przykładzie użyto funkcji CDec do konwertowania wartości liczbowej dziesiętne.

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

Funkcja CInt

W tym przykładzie użyto funkcji CInt do konwertowania wartości do liczby całkowitej.

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

Funkcja CLng

W tym przykładzie użyto funkcji CLng do przekonwertowania na wartość typu Liczba długa.

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.

Funkcja CSng

W tym przykładzie użyto funkcji CSng do konwertowania wartości na jednym.

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.

Funkcja CStr

W tym przykładzie użyto funkcji CStr do konwertowania wartości liczbowej do ciągu.

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

Funkcja CVar

W tym przykładzie użyto funkcji CVar , aby przekonwertować wyrażenie typu Variant.

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

Uwaga : Zrzeczenie dotyczące tłumaczenia maszynowego: Ten artykuł został przetłumaczony przez system komputerowy bez interwencji człowieka. Firma Microsoft udostępnia te tłumaczenia maszynowe, aby ułatwić użytkownikom, którzy nie znają języka angielskiego, korzystanie z zawartości dotyczącej produktów, usług i technologii firmy Microsoft. Ponieważ ten artykuł został przetłumaczony maszynowo, może zawierać błędy w słownictwie, składniowe lub gramatyczne.

Rozwijaj swoje umiejętności
Poznaj szkolenia
Uzyskuj nowe funkcje w pierwszej kolejności
Dołącz do niejawnych testerów pakietu Office

Czy te informacje były pomocne?

Dziękujemy za opinię!

Dziękujemy za opinię! Wygląda na to, że połączenie Cię z jednym z naszych agentów pomocy technicznej pakietu Office może być pomocne.

×