Val กับ Cdbl ใช้ยังงัยครับ
ใช้ในกรณีที่ต้องการเปลี่ยนค่าของ นิพจน์ แปลเป็นค่าที่เฉพาะเจาะจง
Cdbl คือการเปลี่ยน นิพจน์ให้เป็น Double ครับ
ยกตัวอย่าง ผมกำหนด Integet กับ Double เพื่อให้เห็นความแตกต่าง
Dim MyDouble, MyInt
MyDouble = 2345.5678 ' MyDouble แสดงค่าเป็น Double.
MyInt = CInt(MyDouble) ' MyInt แสดงค่าเป็น 2346. คือ Integer
ตัวอย่าง Val กำหนดตัวแปร
Dim MyInt, MyVar
MyInt = 1554 ' MyInt คือค่าจำนวนเต็มตัวเลข หรือว่า Integer.
MyVar = CVar(MyInt & "0000") จะเห็นได้ว่าเราแทนค่าตัวแปร Var = 0000 ออกมา
MyVar จะแสดงผลออกมาดังนี้ 15540000.
ในกรณีที่จะ ใช้ในการคำนวนยกตัวอย่างเชื่อ
มีชื่อมูลตัวเลข ที่เราเก็บไว้ใน Record เป็น Sting
ชื่อ text 1 = 1.5 และ text 2 = 6.1 ผลการรวทที่ได้ กรณี text1+text2 คือ 1.56.1
ซึ่งเมื่อเราต้องการคำนวน แล้วให้แสดงค่าเป็น Double ต้องกำหนดดังนี้
(CDbl(text1)) + (CDbl(text1)) ผลที่ได้คือ 7.7 นั้นเอง
ยังมีการเปลี่ยนค่าของ นิพจน์ แปลเป็นค่าที่เฉพาะเจาะจง
ซึ่งยังมี อีกหลายรูปแบบด้วยกันดังนี้
CBool Boolean สตริงที่ที่ถูกต้องหรือนิพจน์ใด ๆ
CByte ไบต์ 0 ถึง 255
CCur สกุลเงิน -922,337,203,685,477.5808 เพื่อ 922,337,203,685,477.5807
CDate วันที่ นิพจน์วันที่ที่ถูกต้องใด ๆ
CDbl Double
CDec เลขฐานสิบ
+/ 79,228,162,514,264,337,593,543,950,335 สำหรับศูนย์ปรับขนาดตัวเลข นั่นคือ ตัวเลข โดยไม่มีจุดทศนิยม สำหรับตัวเลขที่มีตำแหน่งทศนิยม 28 คือช่วง
+/ 7.9228162514264337593543950335 หมายเลขที่ไม่ใช่ศูนย์เป็นไปได้น้อยที่สุดคือ 0.0000000000000000000000000001
CInt จำนวนเต็ม -32768 ถึง 32767 แทนเศษส่วนจะถูกปัดเศษ
CLng ความยาว -2147483648 เพื่อ 2147483647 แทนเศษส่วนจะถูกปัดเศษ
CSng เดี่ยว -3.402823 e 38 ถึง - 1.401298 e-45 สำหรับค่าลบ 1.401298 e-45 ถึง 3.402823 e 38 สำหรับค่าบวก
CStr สตริง ส่งกลับค่าสำหรับ CStr ขึ้นอยู่กับอาร์กิวเมนต์นิพจน์
CVar ตัวแปร ช่วงเดียวกันเป็นคู่สำหรับ numerics ช่วงเดียวกันเป็นสตริงที่สำหรับ numerics ไม่ใช่