vba中数据类型转换文档格式.docx
- 文档编号:20237441
- 上传时间:2023-01-21
- 格式:DOCX
- 页数:7
- 大小:17.10KB
vba中数据类型转换文档格式.docx
《vba中数据类型转换文档格式.docx》由会员分享,可在线阅读,更多相关《vba中数据类型转换文档格式.docx(7页珍藏版)》请在冰豆网上搜索。
CStr(expression)
CVar(expression)
必要的expression参数可以是任何字符串表达式或数值表达式。
返回类型
函数名称决定返回类型,如下所示:
函数
expression参数范围
CBool
Boolean
任何有效的字符串或数值表达式。
CByte
Byte
0至255。
CCur
Currency
-922,337,203,685,477.5808至922,337,203,685,477.5807。
CDate
Date
任何有效的日期表达式。
CDbl
Double
负数从-1.79769313486231E308至-4.94065645841247E-324;
正数从4.94065645841247E-324至1.79769313486232E308。
CDec
Decimal
零变比数值,即无小数位数值,为
+/-79,228,162,514,264,337,593,543,950,335。
对于28位小数的数值,范围则为
+/-7.9228162514264337593543950335;
最小的可能非零值是0.0000000000000000000000000001。
CInt
Integer
-32,768至32,767,小数部分四舍五入。
CLng
Long
-2,147,483,648至2,147,483,647,小数部分四舍五入。
CLngLng
LongLong
-9,223,372,036,854,775,808到9,223,372,036,854,775,807;
小数部分四舍五入。
(只在64位平台上有效。
CLngPtr
LongPtr
在32位系统上,为-2,147,483,648到2,147,483,647;
在64位系统上,为-9,223,372,036,854,775,808到9,223,372,036,854,775,807;
对于32位和64位系统,小数部分四舍五入。
CSng
Single
负数为-3.402823E38至-1.401298E-45;
正数为1.401298E-45至3.402823E38。
CStr
String
依据expression参数返回Cstr。
CVar
Variant
若为数值,则范围与Double相同;
若不为数值,则范围与String相同。
说明
如果传递给函数的expression超过转换目标数据类型的范围,将发生错误。
通常,在编码时可以使用数据类型转换函数,来体现某些操作的结果应该表示为特定的数据类型,而不是缺省的数据类型。
例如,当单精度、双精度或整数运算发生的情况下,使用CCur来强制执行货币运算。
应该使用数据类型转换函数来代替Val,以使国际版的数据转换可以从一种数据类型转换为另一种。
例如,当使用Ccur时,不同的小数点分隔符、千分位分隔符和各种货币选项,依据系统的区域设置都会被妥善识别。
当小数部分恰好为0.5时,Cint和CLng函数会将它转换为最接近的偶数值。
例如,0.5转换为0、1.5转换为2。
Cint和CLng函数不同于Fix和Int函数,Fix和Int函数会将小数部分截断而不是四舍五入。
并且Fix和Int函数总是返回与传入的数据类型相同的值。
使用IsDate函数,可判断date是否可以被转换为日期或时间。
Cdate可用来识别日期文字和时间文字,以及落入可接受的日期范围内的数值。
当转换一个数字成为日期时,是将整数部分转换为日期,小数部分转换为从午夜起算的时间。
CDate依据系统上的区域设置来决定日期的格式。
如果提供的格式为不可识别的日期设置,则不能正确判断年、月、日的顺序。
另外,长日期格式,若包含有星期的字符串,也不能被识别。
注意CDec函数不能返回独立的数据类型,而总是返回一个Variant,它的值已经被转换为Decimal子类型。
CBool函数示例
此示例使用CBool函数将表达式转换为Boolean。
如果表达式的值不为零,则CBool返回True;
否则,返回False。
DimA,B,Check
A=5:
B=5'
初始化变量。
Check=CBool(A=B)'
Check包含True。
A=0'
定义变量。
Check=CBool(A)'
Check包含False。
CByte函数示例
此示例使用CByte函数将表达式转换为Byte。
DimMyDouble,MyByte
MyDouble=125.5678'
MyDouble为Double。
MyByte=CByte(MyDouble)'
MyByte包含126。
CCur函数示例
此示例使用CCur函数将表达式转换为Currency。
DimMyDouble,MyCurr
MyDouble=543.214588'
MyCurr=CCur(MyDouble*2)'
将MyDouble*2的结果
'
(1086.429176)转换为
Currency(1086.4292)。
CDate函数示例
此示例使用CDate函数将字符串转换为Date。
通常,建议不要将日期和时间硬编码为字符串(如此示例中所示)。
请改为使用日期文字和时间文字,如#2/12/1969#和#4:
45:
23PM#。
DimMyDate,MyShortDate,MyTime,MyShortTime
MyDate="
February12,1969"
'
定义日期。
MyShortDate=CDate(MyDate)'
转换为Date数据类型。
MyTime="
4:
35:
47PM"
定义时间。
MyShortTime=CDate(MyTime)'
CDbl函数示例
此示例使用CDbl函数将表达式转换为Double。
DimMyCurr,MyDouble
MyCurr=CCur(234.456784)'
MyCurr为Currency。
MyDouble=CDbl(MyCurr*8.2*0.01)'
转换结果为Double。
CDec函数示例
此示例使用CDec函数将数字值转换为Decimal。
DimMyDecimal,MyCurr
MyCurr=10000000.0587'
MyDecimal=CDec(MyCurr)'
MyDecimal为Decimal。
CInt函数示例
此示例使用CInt函数将值转换为Integer。
DimMyDouble,MyInt
MyDouble=2345.5678'
MyInt=CInt(MyDouble)'
MyInt包含2346。
CLng函数示例
此示例使用CLng函数将值转换为Long。
DimMyVal1,MyVal2,MyLong1,MyLong2
MyVal1=25427.45:
MyVal2=25427.55'
MyVal1、MyVal2为Double。
MyLong1=CLng(MyVal1)'
MyLong1包含25427。
MyLong2=CLng(MyVal2)'
MyLong2包含25428。
CSng函数示例
此示例使用CSng函数将值转换为Single。
DimMyDouble1,MyDouble2,MySingle1,MySingle2
MyDouble1、MyDouble2为Double。
MyDouble1=75.3421115:
MyDouble2=75.3421555
MySingle1=CSng(MyDouble1)'
MySingle1包含75.34211。
MySingle2=CSng(MyDouble2)'
MySingle2包含75.34216。
CStr函数示例
此示例使用CStr函数将数字值转换为String。
DimMyDouble,MyString
MyDouble=437.324'
MyString=CStr(MyDouble)'
MyString包含"
437.324"
。
CVar函数示例
此示例使用CVar函数将表达式转换为Variant。
DimMyInt,MyVar
MyInt=4534'
MyInt为Integer。
MyVar=CVar(MyInt&
"
000"
)'
MyVar包含字符串
4534000.
(注:
专业文档是经验性极强的领域,无法思考和涵盖全面,素材和资料部分来自网络,供参考。
可复制、编制,期待你的好评与关注)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vba 数据类型 转换