ฟังก์ชัน Type Conversion

สิ่งสำคัญ:  บทความนี้เป็นการแปลด้วยเครื่อง โปรดดู ข้อจำกัดความรับผิดชอบ โปรดดูบทความฉบับภาษาอังกฤษ ที่นี่ เพื่อใช้อ้างอิง

ฟังก์ชันแต่ละบังคับให้มีนิพจน์ เพื่อชนิดข้อมูล เฉพาะเจาะจง

ไวยากรณ์

CBool ( นิพจน์ )

CByte ( นิพจน์ )

CCur ( นิพจน์ )

CDate ( นิพจน์ )

CDbl ( นิพจน์ )

CDec ( นิพจน์ )

CInt ( นิพจน์ )

CLng ( นิพจน์ )

CSng ( นิพจน์ )

CStr ( นิพจน์ )

CVar ( นิพจน์ )

จำเป็นต้องมีนิพจน์อาร์กิวเมนต์นิพจน์สตริง หรือนิพจน์ตัวเลข ใด ๆ ได้

ส่งกลับชนิด

ชื่อฟังก์ชันกำหนดชนิดค่าที่ส่งกลับดังที่แสดงในตัวอย่างต่อไปนี้:

ฟังก์ชัน

ส่งกลับชนิด

ช่วงสำหรับ นิพจน์ อาร์กิวเมนต์

CBool

Boolean

สตริงที่ที่ถูกต้องหรือนิพจน์ใด ๆ

CByte

Byte

0 ถึง 255

CCur

สกุลเงิน

-922,337,203,685,477.5808 เพื่อ 922,337,203,685,477.5807

CDate

วันที่

นิพจน์วันที่ที่ถูกต้องใด ๆ

CDbl

Double

-1.79769313486231 e 308 ถึง
-4.94065645841247 e-324 สำหรับค่าลบ 4.94065645841247 e-324 ถึง 1.79769313486232 e 308 สำหรับค่าบวก

CDec

Decimal

+/ 79,228,162,514,264,337,593,543,950,335 สำหรับศูนย์ปรับขนาดตัวเลข นั่นคือ ตัวเลข โดยไม่มีจุดทศนิยม สำหรับตัวเลขที่มีตำแหน่งทศนิยม 28 คือช่วง
+/ 7.9228162514264337593543950335 หมายเลขที่ไม่ใช่ศูนย์เป็นไปได้น้อยที่สุดคือ 0.0000000000000000000000000001

CInt

จำนวนเต็ม

-32768 ถึง 32767 แทนเศษส่วนจะถูกปัดเศษ

CLng

ความยาว

-2147483648 เพื่อ 2147483647 แทนเศษส่วนจะถูกปัดเศษ

CSng

Single

-3.402823 e 38 ถึง - 1.401298 e-45 สำหรับค่าลบ 1.401298 e-45 ถึง 3.402823 e 38 สำหรับค่าบวก

CStr

สตริง

ส่งกลับค่าสำหรับ CStr ขึ้นอยู่กับอาร์กิวเมนต์นิพจน์

CVar

ตัวแปร

ช่วงเดียวกันเป็นคู่สำหรับ numerics ช่วงเดียวกันเป็นสตริงที่สำหรับ numerics ไม่ใช่


ข้อสังเกต

ถ้านิพจน์ที่ส่งไปยังฟังก์ชัน อยู่นอกช่วงของชนิดข้อมูลถูกแปลงเป็น เกิดข้อผิดพลาด

โดยทั่วไป คุณสามารถเอกสารโค้ดของคุณโดยใช้ฟังก์ชันการแปลงชนิดข้อมูลเพื่อแสดงว่า ควรแสดงผลลัพธ์ของการดำเนินการบางอย่างเป็นชนิดข้อมูลเฉพาะเจาะจงแทนข้อมูลเริ่มต้นพิมพ์ ตัวอย่าง ใช้CCurบังคับให้สกุลเงินทางคณิตศาสตร์ในกรณีที่ความ แม่นยำเดียว ความ แม่นยำคู่ หรือจำนวนเต็มทางคณิตศาสตร์โดยปกติจะเกิดขึ้น

คุณควรใช้ฟังก์ชันการแปลงชนิดข้อมูลแทนที่เป็นValเพื่อแปลงสากลทราบจากชนิดข้อมูลหนึ่งไปยังอีกให้ ตัวอย่าง เมื่อคุณใช้CCurตัวคั่นทศนิยมที่แตกต่างกัน ตัวคั่นหลักพันที่แตกต่างกัน และเป็นที่รู้จักตัวเลือกสกุลเงินต่าง ๆ โดยขึ้นอยู่กับการตั้งค่าตำแหน่งที่ตั้งของคอมพิวเตอร์ของคุณอย่างถูกต้องเท่านั้น

เมื่อเศษส่วนจะเท่ากับ 0.5, CIntและCLngจะปัดตัวเลขคู่ที่ใกล้เคียงที่สุด ตัวอย่างเช่น 0.5 ปัดเมื่อต้องการปัดเศษ-0 และ 1.5 เป็น 2 CIntและCLngแตกต่างจากการแก้ไขและIntฟังก์ชัน ซึ่งตัดทอน แทนที่ จะปัด เศษ เศษส่วนของจำนวน ยังแก้ไขและIntเสมอส่งกลับค่าเป็นชนิดเดียวกันตามผ่านเข้ามา

ใช้ฟังก์ชันIsDateเพื่อกำหนดถ้าสามารถแปลงวันที่เป็นวันหรือเวลา เที่ยงตัวอักษรวัน และเวลาตัวอักษร ตลอดจนบางตัวเลขที่อยู่ภายในช่วงของวันที่ยอมรับ เมื่อการแปลงตัวเลขเป็นวัน ส่วนที่เป็นจำนวนเต็มจะถูกแปลงเป็นวันที่ เศษส่วนใด ๆ ของตัวเลขจะถูกแปลงเป็นเวลาของวัน เริ่มต้นที่เที่ยงคืน

เที่ยงรูปแบบวันที่ตามการตั้งค่าตำแหน่งกระทำการ ของระบบของคุณ ลำดับ ของวัน เดือน ปีถูกต้องอาจไม่สามารถกำหนดถ้านั้นไว้ในรูปแบบอื่นนอกเหนือจากหนึ่งในการตั้งค่าวันที่รู้จัก นอกจากนี้ รูปแบบวันแบบยาวไม่รู้จักถ้ายังประกอบด้วยสตริงที่วันของระบบในสัปดาห์

ฟังก์ชันCVDateยังได้รับการจัดเตรียมไว้สำหรับความเข้ากันได้กับเวอร์ชันก่อนหน้าของ Visual Basic ไวยากรณ์ของฟังก์ชันCVDateจะเหมือนกับฟังก์ชันCDateอย่างไรก็ตามCVDateส่งกลับตัวแปรชนิดย่อยที่มีค่าวันที่แทนที่จะเป็นชนิดวันจริง การแปลงชนิดวันทริน จะไม่เพิ่มเติมจำเป็นต้องมีCVDate ผลลัพธ์แบบเดียวกันสามารถทำได้ โดยการแปลงวันนิพจน์ และกำหนดให้กับตัวแปร วิธีนี้จะสอดคล้องกับการแปลงชนิดอื่น ๆ ทรินเทียบเท่ากันชนิดย่อยของตัวแปรชนิด

หมายเหตุ: ฟังก์ชันCDecจะส่งกลับชนิดข้อมูลที่แยกกัน แทน นั้นจะส่งกลับตัวแปรซึ่งมีค่าที่ถูกแปลงเป็นชนิดย่อยของตำแหน่งทศนิยมที่

ตัวอย่าง

หมายเหตุ: ตัวอย่างที่ติดตามสาธิตการใช้ฟังก์ชันนี้ใน Visual Basic for Applications (VBA) มอดูล สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการทำงานกับ VBA เลือกอ้างอิงสำหรับนักพัฒนา ในรายการดรอปดาวน์ถัดจากค้นหา และใส่เงื่อนไขอย่าง น้อยหนึ่งในกล่องค้นหา

ฟังก์ชัน CBool

เคล็ดลับ: ตัวสร้างนิพจน์ ด้วย IntelliSense จุดเริ่มต้นใน Access 2010 ช่วยให้กับต้นนิพจน์ของคุณให้เหมาะสม

ตัวอย่างนี้ใช้ฟังก์ชันCBoolเพื่อแปลงนิพจน์บูลี ถ้านิพจน์ที่ประเมินเป็นค่าไม่ใช่ศูนย์CBoolส่งกลับTrue มิฉะนั้น จะส่งกลับ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.

ฟังก์ชัน CByte

ตัวอย่างนี้ใช้ฟังก์ชันCByteเพื่อแปลงนิพจน์เป็นไบต์

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

ฟังก์ชัน CCur

ตัวอย่างนี้ใช้ฟังก์ชันCCurเพื่อแปลงนิพจน์เป็นสกุลเงิน

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

ตัวอย่างนี้ใช้ฟังก์ชันCDateจะแปลงสตริงที่วันที่ โดยทั่วไป เสียโค้ดวันและเวลาเป็นสตริงที่ (ดังที่แสดงในตัวอย่างนี้) จะทำได้ ใช้ตัวอักษรวันและเวลาอักษร เช่น #2/12/1969 # และ # 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

ตัวอย่างนี้ใช้ฟังก์ชันCDblเพื่อแปลงนิพจน์เป็นแบบคู่

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

ฟังก์ชัน CDec

ตัวอย่างนี้ใช้ฟังก์ชันCDecเพื่อแปลงค่าตัวเลขเป็นตัวเลขฐานสิบ

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

ฟังก์ชัน CInt

ตัวอย่างนี้ใช้ฟังก์ชันCIntเพื่อแปลงค่าที่เป็นจำนวนเต็ม

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

ฟังก์ชัน CLng

ตัวอย่างนี้ใช้ฟังก์ชันCLngเพื่อแปลงค่าเป็นค่าความยาว

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

ตัวอย่างนี้ใช้ฟังก์ชันCSngเพื่อแปลงค่าเดียวกัน

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

ตัวอย่างนี้ใช้ฟังก์ชันCStrเพื่อแปลงค่าตัวเลขเป็นสตริง

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

ฟังก์ชัน CVar

ตัวอย่างนี้ใช้ฟังก์ชันCVarเพื่อแปลงนิพจน์เป็นตัวแปร

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

หมายเหตุ: ข้อจำกัดความรับผิดชอบของการแปลด้วยเครื่อง: บทความนี้มีการแปลด้วยระบบคอมพิวเตอร์โดยไม่มีการดำเนินการโดยบุคคล Microsoft จัดให้มีการแปลด้วยเครื่องนี้เพื่อช่วยให้ผู้ใช้ที่ไม่ได้พูดภาษาอังกฤษสามารถใช้ประโยชน์จากเนื้อหาเกี่ยวกับผลิตภัณฑ์ บริการและเทคโนโลยีของ Microsoft เนื่องจากบทความมีการแปลด้วยเครื่อง อาจมีข้อผิดพลาดด้านคำศัพท์ ไวยากรณ์หรือรูปประโยค

ขยายทักษะของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×