VB.NET2005函數大全
2009-09-21 15:53:16| 分类: VB.NET 2005 |字号 订阅
一、数学函数
函数 说明
Abs (num) 取绝对值。
Exp (num) 返回以e为底、以num为指数的值,如Exp(2)返回e^2值。
Log (num) 返回参数num的自然对数值,为Double类型,即以e为底的对数。
Hex (num)` 将参数num转换为16进制。
Oct (num) 将参数num转换为8进制
Sign (num) 返回参数的正负符号,若num大于0,则返回值为1;若num等于0,则返回值为0;若num小于0,则返回值为-1。
Sqrt (num) 返回参数平方根为,Double类型。
Atan (num) 反正切函数
Sin (num) 正弦函数
Cos (num) 余弦函数
Tan (num) 正切函数
Rand (num,[int]) 将参数num四舍五入,若要指定四舍五入到哪位小数,可以加上第二个参数int。 如:Round (12. 456 )返回值为12;Round (12 . 4567,3 ) 返回值为12. 457。
Rnd [(nun)] 产生一个小于1,大于或等于0的随机数,类型为Single。
若参数num小于0,那么每次都会返回相同的随机数;若没有提供参数或参数大于0,那么会依序产生下一个随机数,此为默认值;若参数num等于0,那么会返回最近一次产生的随机数。为了每次产生不同的随机数,在使用Rand ()函数之前,最好使用Randomize语句。若要随机产生一个N到M的整数,可利用如下公式:Int (Rand ()*M-N+1)+N。
Pow (x,y) 求x的y次方。
Val (str) 将字符串内的数字转换成Integer或Double类型返回。
Str (num) 将数值类型参数转换成字符串返回。
Fix (num) 参数大于0时,去掉小数部分;参数小于0时,返回大于或等于该参数值。
Int (num) 参数大于0时,去掉小数部分;数小于0时,返回小于或等于该参数值。
二、字符串函数
<一> 字符串转换函数
(1)Lcase (str):将字符串str转换成小写字母。
(2)Ucase (str):将字符串str转换成大写字母。
(3)Asc (St): 取得字符串str的第一个字符ASCII 码。
(4)Chr (int): 以ASCII 码来取得字符内容。 如:chr (65)会返回字符A。
(5)StrReverse (str): 取得字符串str内容反转后的结果。如:StrReverse (\"Love\")返回值为\"evoL\"。
<二> 依照指定格式转换字符串函数StrConv ()
语法格式:StrConv (str As String,ConverSion As VbStrConv [,LocaleID As Integer ]) As String
说明:根据参数ConverSion指定的格式将参数str转换完毕的结果返回。参数ConverSion属于Microsoft.VisualBasic.VbStrConv枚举,其成员如下:
VbstrConv枚举成员 说明
VbStrConv.None 不执行转换。
VbStrConv.Nove.LinguisticCasing 使用大小写的语言风格,而不是文件系统(默认
值)。
VbStrConv.UpperCase 将字符串转换成大写字母。
VbStrConv.LowerCase 将字符串转换成小字字母。
VbStrConv.ProPerCase 将字符串中每个单字的第一个字母转换成大写。
VbStrConv.Widw* 将字符串中的半角字符转换成全角字符。
VbStrConv.Narrow* 将字符串中的全角字符转换成半角字符。
VbStrConv.KataKana** 将字符串中平假名字符转换成片假名字符。
VbStrConv.HiraGanna** 将字符串中的片假名字符转换成平假名字符。
VbStrConv.SimpLifedChinese* 将繁体汉字转换成简体中文。
VbStrConv.TraditionalChinese 将简体中文转换成繁体汉字。
注:*适用于亚州地区设置;**仅适用于日本。
例如:StrConv (\"I AM HAPPY\返回值为:i am happy。
<三> 字符串搜索、比较、筛选与替换函数
(1)字符串比较比较函数StrComp ()
语法:StrComp (str1 As String , str2 As String [,ampare As Microsoft.VisualBasic.CompareMethod]) As Integer
说明:返回表示str1和str2两个字符串参数比较结果,若str1小于str2,则返回-1;若str1等于str2,返回0;若str1大于str2,若返回1。选择性参数Compare的值有Binary(区分大小写)和Text(不区分大小写)两种,前者为默认值。
(2)筛选字符串数组函数Filter ()
语法:Filter (Source() As {Object | String},match As String [,include As Boolean [,compare As Microsoft.VisualBasic.CompareMethod ]] As String ()
说明:从一维字符串数组Source ()中筛选包含match字符串的子数组。若选择性参数include为True(默认),表示从字符串数组Source ()中筛选包含match字符串的子数组;若选择性参数include为false,表示字符串数组source ()中筛选不包含match字符串的子数组;选择性参数compare的值有Binary(区分大小定)和Text(不区分大小字)两种,前者为默认值,决定了字符串的比较方式。例如:Source ()={\"abc\
,
那
么
filter
(Source ,\"ab\会返回{\"abc\。
(3)替换字符串函数RePlace ()
语法:RePlace (str As String , find As String , replacement As String [,start As
Integer [,count As Integer [,compare As Microsoft.VisualBasic.CompareMethod ]]] As String
说明:将str字符串内的find子字符串替换为replacement子字符串。选择性参数start表示从str字符串的第start个字符开始查找find子字符串,默认为1;选择性count表示做几次替换,默认为-1,表示执行所有可能的替换;选择性参数compare的值有Binary(区分大小定)和Text(不区分大小字)两种,前者为默认值,决定了字符串的比较方式。如:str=\"shopping list\"那么Relace (str,\"o\会返回\"Shipping list\"。
(4)查找字符串函数InStr ()
语法:InStr (start As Integer , str1 As String , str2 As String [,compare As Microsoft.VisualBasic.CompareMethod]) As String
说明:返回str2字符串在str1字符串中第一次出现的位置。若str1为空字符串(\"\")或str2没有出现在str1或start大于str2的长度,就返回0;若str2为空字符串(\"\"),就返回start;选择性参数compare的值有Binary(区分大小定)和Text(不区分大小字)两种,前者为默认值,决定了字符串的比较方式。如:Instr (3,\"Hell Wold\返回5。
(5)查找字符串函数Instrrev ()
语法:InStrRev (str1 As String,Str2 As Interger [,start As Integer [,compare As Microsoft.VisualBasic.compareMethod ]]) As Integer
说明:InStrRev ()函数的用途和InsStr ()函数相似,但改从字符串的右边开始检查str2
字符串在str1字符中第一次出现的位置不同。如:InStrRev (\"Hello Word\返回3。
(6)将字符串数组组成单一字符串函数join ()
语法:Jon (Source () As {Object | String} [,delimiter As String]) As String
说明:将字符串数组Source ()内的每个字符串组成单一字符串返回,选择性参数delimter表示每个字符之间的分隔符,默认为空字符串(\"\")。如:Source ()={\"Janifer\那么join (Source)会返回\"Janifer Perter Rober\"。
(7)将字符串分解成子字符数组函数Split ()
语法:Split (str As String [,delimiter As String [,limit As Integer [,compare As Microsoft.VisualBasic.CompareMethod ]]]) As String
说明:将组成字符串str的每一个字符串放进字符串数组内返回。选择性参数delimiter表示每个子字符串之间的分隔符,默认值为空字符串(\"\");参数limit是要返回的子字符串数目,默认为-1,表示返回所有子字符串;参数compare的值有Binary(区分大小定)和Text(不区分大小字)两种,前者为默认值,决定了字符串的比较方式。如:str=\" I am Happy.\那么Split (str)会返回字符串数组{\"I\。
<四> 字符串操作数
(1)Len (str):获取字符串长度;也可以测试变量名所存储数据空间的大小。Len (字符串)或Len (变量名)
(2)Space (int):由空格符组成的字符串,返回int个空格。
(3) StrDup (int , char):由指定字符组成的字符串,返回由chr字符所组成部分的字符串,int的类型的onteger,chr为Char或String类型,若为String,则返回由int个该字符串中第一个字符所组成的字符串。如:StrDup (3,\"I am Happy.\")返回\"III\"。
(4)Left (str , int):从字符串str左边返回int个字符。
(5)Right (str , int):从字符串str右边返回int个字符。
(6)Mid (str , int1 , int2):从字符串str的第int1个字符开始返回int2个字符,int2可省略,若int2省略则从int1个字符开始截取到最后。如:Mind (\"Happy Birthday\返回\"ppy B\"。
(7)LTirm (str):删除左边空格。
(8)RTim (str):删除右边的空格。
(9)Trim (str):删除两边的空格。
三、日期时间函数
<一> 获取/设置目前日期时间函数
(1)Now ():返回系统目前的日期和时间。如:2007-3-29 早上10:38:22
(2)Today ():返回或设置系统目前的日期。
(3)TimeOfDay ():返回或设置系统目前的时间。
(4)DataString ():以\"yyy-mm-dd\"格式返回或设置系统目前时间。
(5)Timer ():以Double类型返回自午夜到今所经过的秒数和毫秒数,秒数是返回值的整数部分,毫秒数则是小数部分。
<二> 返回日期时间函数
(1)合并年月日成日期函数 DateSerial ()
格式:DateSerial (year As Integer , month As Integer , day As Integer ) As DateTime
说明:将参数所指定的年月日合并成日期返回,参数year的值须是介于1~9999的整数,若是介于0~99的整数,将被解释为1930~2029,若是小于1的整数,将自目前年底中减去;参数day的值须是介于1~31的整数,若是小于1的整数,将自目前日期中减去。例如:DateSerial (99,10,22) 会返回#1999-10-22#;DateSerial (99,10,22-23)会返回#1999-9-29\";DateSerial (99,10,22+3)会返回#1999-10-25#。
(2)将字符串转换成日期函数 DateValue ()
格式:DateValue (str As String) As Date Time
说明:将参数转换成日期返回。参数str是表示由1年1月00:00:00到9999年12月31日23:59:59之间日期/时间值的字符串表达式。例如:DateValue (\"Februay , 12 , 1972\")会返回#1972-2-12#。
(3)合并时分秒成时间函数TimeSerial ()
格式:TimeSerial Chour As Integer , minute As Integer , Second As Integer ) As DateTime
说明:将参数所指定的时分秒合并成时间返回。参数hour的值必须是介于0~23的整数,若是小于1的整数,将自目前小时数中减去;参数minute和参数second的值须是介于0~59的整数,若是小于1的整数,将分别自目前分钟数与秒数中减去,例如:TimeSerial (12-6,-15,0)会返回上午06:45:00
(4)将字符串转换成时间函数TimeValue ()
格式:TimeValue (str As String) As DateTime
说明:将参数转换成时间返回。参数str是表示由1年1月1日00:00:00到9999年12月31日23:59:59之日期/时间值的字符串表达式。例如:TimeValue (\"4:35:17 pm\") 会返回#下午04:35:17#。
(5)获取月份名称函数MonthName ()
格式:MonthName (month As Integer [ , abbreviate As Boolean]) As String
说明:根据参数month的值返回月份的名称,例如:MonthName (12)会返回\"十二月\"字符串,参数month的类型为Integer;选择性参数abbreViate类型为Boolean,用来表示月份的名称能否被缩写。
(6)获取星期几名称函数WeekdayName ()
格式:WeekdayName (weekday As Integer [, abbreviate As Boolean [, dayofweek As FirstDayOfWeek ]]) AS String
说明:根据参数weekday的值返回星期几的名称,默认情况下,1,2~7会分别返回\"星期日\"、\"星期一\"~\"星期六\";abbreviate用来表示星期几的名称能否被缩写,而选择性参数dayofweek的类型为FirstDayOfWeek枚举,用来表示一星期的第几天,默认为FirstDayOfWeek.System (0),即采取系统设置中所指定的每周第一天,通常是星期日。如下表:
FirstDayOfWeek枚举成员 值 说明
FirstDayOfWeek.System 0 系统设置指定每周的第一天(默认值)
FirstDayOfWeek.Sunday 1 星期日
FirstDayOfWeek.Monday 2 星期一
FirstDayOfWeek.Tuesday 3 星期二
FirstDayOfWeek.Webnesday 4 星期三
FirstDayOfWeek.Thursday 5 星期四
FirstDayOfWeek.Friday 6 星期五
FirstDayOfWeek.Saturday 7 星期六
<三> 计算日期时间函数
(1)日期时间增减函数DateAdd ()
格式:DateAdd (interval As DateInerVal , number As Double , dt As DateTime ) As DateTime
说明:将参数dt指定的日期加上number个intval。例如:DateAdd (\"m\1, #11/25/1990#)会返回#1990/12/25#,其中interval为\"m\",表示月份,number为\"1\",dt为指定的日期,这个叙述的意义是将dt指定的日期加上1个月,DateAdd (\"q\2, #2001/1/31#)会返回#2001/7/31#,也就是#2001/1/31#加上两个季。Interval属于DateInterVal枚举,成员如下表:
成员 值 说明 成员 值 说明
DateInterVal.Year yyyy 年 DateInterVal.Quarte q 季
DateInterVal.Month m 月 DateInterVal.DayOfYear y 一年中的第几天
DateInterVal.Day d 日 DateInterVal.Hour h 小时
DateInterVal.WeekOfYear ww 一年中的第几周 DateInterVal.DayOfWeek 一周中的星期几
DateInterVal.Minute n 分钟 DateInterVal.Second s 秒数
(2)日期时间差函数DateDiff ()
格式:DateDiff (interval As DateInterVal, dt1 As DateTime, dt2 As DateTime [, dayofweek As FirstDayOfWeek [, weekofyear As FirstWeekOfYear ]] As Long
说明:返回dat1和dat2 两个日期之间的间隔数,间隔单位为参数interval,例如:DateDiff (\"m\会返回-11,即两个日期相间隔11个月(第一个参数指定间隔单位为月;DateDiff (\"d\会返回10,即两个日期间隔10天(第一个参数指定间隔单位为天)。
参数interval属于DateInterVal枚举;选择性参数dayofweek可以省略,用来指定哪一天为一周的第一天,属于FirstDateOfWeek枚举,其值有FirstDayWeek.System (0), FirstDayWeek.Sunday (1), FirstDayWeek.Monday (2), FirstDayWeek.Tuesday (3), FirstDayWeek.Wednesday (4), FirstDayWeek.Saturday (5), FirstDayWeek.Friday (6), FirstDayWeek.Satuday (7)等8种;选择性参数weekofyear可以省略,用来指定哪一周为一年的第一周,属于FirstWeekOfYear枚举,其值有FirstWeelkOfYear.System (0)系统默认值、FirstWeelkOfYear.Jan (1)一月一日当周、FirstWeelkOfYear.FirstFourDays (2)新年度至少有4天在该周、FirstWeelkOfYear.FirstFullWeek (3)新年度的第一个完整星期等4种;例如:DateDiff (\"ww\会返回两个日期之间有几个星期日。
(3)获取日期时间的指定部份函数DatePart ()
格式:DatePart (interval As DateInterval, dt As DateTime [, dayofweek As FirstDayOfWeek [, weekofyear As FirstWeekOfYear ]])
说明:返回特定日期指定部分。例如DatePart (\"y\会返回天数255,因为9月11日为1992年的第255天;DatePart (\"w\会返回3,表示为星期二。DatePart ()函数的参数意义同DateDiff ()函数。
四、格式化函数
<一> 日期时间格式化函数
语法:FormatDateTime (exp As DateTime [, namedformat As DateFormat ]) As String
说明:依照参数namedformat指定的格式将参数exp的日期格式化,选择性参数namedformat属于DateFormat枚举,成员如下:
(1)DateFormat.GeneralDate:显示日期和(或)时间。若有日期部分,则会显示为简短日期;若有时间部分,则会显示为完整时间;若两者皆有,则会全显示。
(2)DateFormat.LongDate:使用计算机的区域选项中所指定的完整日期格式显示日期。
(3)DateFormat.ShortDate:使用计算机的区域选项中所指定的简短日期格式显示
日期。
(4)DateFormat.LongTime:使用计算机的区域选项中所指定的时间格式来显示日期。
(5)DateFormat.ShortTime:使用24小时制(hh : mm)来显示时间。
如:FormatDateTime (#2/14/2002#, DateFormat.LongDate)会返回\"2002年2月14日\";
FormatDateTime (#2/14/2002#, DateFormat.ShortDate)会返回\"2002/2/14\"。
<二> 货币值格式化函数FormatCurrency ()
语法:FormatCurrency (exp As Object [, numdigitsafterdecimal As Integer [, leadingdigit As Tristate [,negparen As Tristate [,groupDigits As TriState ]]]]) As Strong
说明:将参数exp设置成指定的货币格式,此货币值使用控制面板中区域选项所定义货币符。选择性参数numdigitsafterdecimal表示要显示小数点后面几们数,-1为采取系统默认值;选择性参数leadingdigit表示是否要在小于1的值前面加上0,属于Tristate枚举,成员如下表所示;选择性参数negparen表示是否要将负数用括号起来,属于Tristate枚举;选择性参数groupdigits表示加上分隔符来组合数字,属于Tristate枚举。例如: FormatCuurnct (12345.789, 2)会返回NT$123,456.79
Tristate枚举成员 值
Tristate.True True
Tristate.False False
Tristate.UseDefault 区域选项的设置
<三> 数值格式化函数FormatNumber ()
语法:FormatNumber (exp As Object [, numdigitsafterdecinnal As Integer [,leadingdigit As Tristate [,negparen As Tristate [,Groupdigits As Tristate ]]]] As String
说明:将参数exp设置成指定的数值格式。选择参数同上(即同货币值函数参数)
<四> 百分比格式化函数FormatPerCent ()
语法:FormatPerCent (exp As Object [, numdigitsafterdecinnal As Integer [,leadingdigit As Tristate [,negparen As Tristate [,Groupdigits As Tristate ]]]] As String
说明:将参数exp设置成指定的百分比格式(乘以100)选择性参数同上。
<五> 格式化函数Format ()
语法:Format (exp As Object [, style As String]) As String
说明:根据style指定格式将exp格式化。选择性参数style为任何预先定义的格式化表达式或用户自定义的格式化表列,如下两个表:
预定义的格式 说明
General Date或G 显示日期/时间,例如Format (Now ,\"General Date\")会返回系统目前的日期/时间,好比是2002/1/31 下午12: 26: 03。若没有分数部分,则只会显示日期;若没有整数部分,则只会显示时间。
Long Date或D 以系统的完整日期格式显示日期。如Format (Now, \"Long Date\")为: 2006年1月28日
Medium Date 以应用程序版本的中等日期格式显示。如Format (Now, \"Medium Date\")返回2006年1月28日
Short Date或 d 以系统的短日期格式显示时间。如 Format (Now, \"Short Date\")返回2006/1/28
Long Time或T 以系统的完整时间格式显示时间,如Format (Now, \"Long Time\")返回12:00:00
Medium Time 以时分及上午下午显示12小时时间格式的时间。
Short Time或T 以24小时的时间格式显示时间。
f 根据控件面板的区域选项设置的格式来显示完整日期及简短时间。
F 根据控件面板的区域选项设置的格式来显示完整日期及完整时间
g 根据控件面板的区域选项设置的格式来显示短日期及短时间。
M,m 显示几月几日。
R,r 根据格林威治标准时间(GMT)来格式化日期及时间。
s 根据可排序的索引来格式化日期及时间。
u 根据GMT可排序的索引来格式化日期及时间。
U 根据GMT以完整日期及完整时间来格式化时间。
y 根据年份及月份来格式化日期。
GeneralNumber 显示的数字没有千分位符号。如Format (12345.6789, \"GeneralNumber\")返回: 12345.6789。
Currency 显示的数值有千分位符号,小数点右边会显示两位。如Format (12345.678, \"Currency\")返回: 12,345.68。
Fixed 小数点左边至少一位数,右边两位数。例如Format (12345.678, \"Fixed\")返回1234567.89%。
Standard 显示的数值有千分位号,小数点左边至少有一位数,右边有两位数。如
Format (12345.6789, \"Standard\")返回12,345.68。
Percent: 以百分比格式显示,小数点右边有两位数,例如 Format (12345.6789, \"Percent\")返回1234567.89%。
Scientific 使用标准科学符号。如 format (12345.6789, \"Scientific\")返回1.23E+04。
D或d 将数值显示为含有小数点格式的数值(十进制),只有整数数类型才支持此项。如Format (4096, \"D\")返回4096
X或x 将数值显示为含有十六进制的数值,只有整数数值类型才支持此项。如 Format (4096, \"X\")返回: 1000。
Yes/No 或数字为0,显示NO,否则显示YES。如 Format (12345.6789, \"Yes/NO\")返回YES。
True/False 若数字为0,显示Flase,否则显示Yes。如 Format (12345.6789, \"True/False\"返回True.
On/Off 若数字为0,显示Off,否则显示On
用户定义的数值格式化字符 说明
# 和 0 # 或0表示一个数字,# 或0的个数决定了数值显示的长度。如果显示的数值的长度小于 # 或 0 的长度, 对于# 符号:无论是整数部分还是小数部分都不补零;
对于0符号:整数在左端补零,小数在右端补零。如果显示的数值的长度大于 # 或 0的长度,对于 # 符号和 0 符号:整数部分都按数值的实际位数输出,小数部分都只显示到有有#号的位置,最后一位四舍五入。
. . 用于显示小数点。小数点与格式符 # 和 0 结合使用,用于指定小数的位数,多余的位数按四舍五入处理。如Format(123.456, \"0000.00\")结果为:0123.46
, ,(逗号)用来在数字中插入千分号。即从数值的小数点靠近左边的第一位开始,每3位插入一位千分号。逗号可放在小数点左边的任何位置。如
Format(1234567.893,\"####, ##\".##\")结果为1,234,567.89。
% % 用于输出百分号。把数值乘以100在后面加上百分号。通常放在格式字符串的后面用来输出百分号。如Format(12.456, \"###.##%\") 结果为:1245.6
$ $放在格式字符串起始位置,用于美元符号输出,可在显示的数值前面加$符号。如Format(1234.567,\"$###.##\")结果为:$1234.57
+或- +或-通常放在格式字符串的前面。用来输出正号或负号。如Format(3456.012,\"+###.##\")结果为+3456.01;Format(3456.012,\"-###.##\")
E+或E- E+或E- 用于数值的指数形式。如 Format(3456.012,\"#.###E+\")结果为:3.456E+03
Format(0.01234, \"#.###E-00\")结果为:1.23E-02。
:或 / :为时间分隔符;/ 为日期分隔符。
\"\" 将双引号\"\"内的字符串显示出来。
M、MM、MMM、MMMM M是以没有零开头地显示(1~12);MM以零开头的数字来显示(01!12);MMM是以简写表示月;MMMM是以命名表示月。如:Format(#1/13/2006#, \"MMMM\")返回\"一月\"
d、d d、d d d、d d d d d以没有零开头的数字来显示;d d是以有零开头的数字来显示;d d d是以简写来表示天;d d d d是以命名来表示天。
gg 显示纪年。例如:Format(#1/32006#,\"gg\")返回\"公元\"
H、HH、h、hh、m、mm、s、ss H是以24小时制,没有零开头的数字将小时显示成数字(0~23);HH是以24小时制,有零开头的数字来显示小(0~23);h是以12小时制,没有零开头的数字将小时显示成数字;hh是以12小时制,有零开头的数字来显示小时;m是以没有零开头的数字来显示分(0~59);mm是以有零开头的数字来显示分(00~59);s是以没有零开头的数字来显示秒(0~59);ss是以有零开头的数字来显示秒(00~59)。如Format(#02:31:50 pm#, \"hh:mm:ss\")返回02:31:50;Format(#02:31:50 pm#, \"HH:mm:ss\") 返回14:31:50 。
f f显示秒数的小数部分。如f f会显示至百分之一秒; f f f会显示至万分之一秒,最多可以使用7个f符号。
t 使用12小时制,同时在正午之前的任何小时加上大写A,在正午与11:59 pm之
前的任何小时加上pm。
t t 使用12小时制,同时在正午之前任何小时加上大写Am;在下午与11:59 pm之前的任何小时加上pm。
y、y y、y y y、y y y y y是以一位数来表示年(0~9);y y是以两位数来表示(00~99);y y y和y y y y是以四位数来表示年。如Format(#1/3/2006#, \"yyyy-MMMM-dd\")返回2006-一月-03
:2、22、222 :2是显示时区差,而且还需要加上前缀零(如-8);22是显示时区时差,而且要加上前缀零(如-08);222是显示完整的时区差(如-08:00)
:/ % :是时间分割符;/是日期分割符;%是用来指示应将后面的字符当作一字母格式读取,而不管是否还跟着任何字母。
五、转换数据类型函数
这些函数的参数均为字符串表达式或数值表达式。例如:Cstr(#1/1/2002#)会返回\"2002/1/1\",因为这个函数的功能就是将参数转换成String类型并返回来。要注意的是,若参数超出类型转换函数的类型所允许的范围或参数的格式难以辨识,将产生错误。转换函数如下表:
转换函数 返回值 说明
CBool (exp) Boolean 将参数转换成Boolean类型并返回来
CByte (exp) Byte 将参数转换为Byte类型,参数须为0~255,小数部分四舍五入。
CChar (exp) Char 将参数转换成Date类型,参数须0~65536。
CDate (exp) Date 将参数转换成Date类型,参数须为有效日期时间。
CDbl (exp) Double 将参数转换成Double类型。
CDec (exp) Decimal 将参数转换成Decimal类型。
CInt (exp) Integer 将参数转换成Integer类型,小数部分四舍五入。
CLng Long 将参数转换成Long类型,小数部分四舍五入。
CObj (exp) Object 将参数转换成Object类型,参数须为有效的表达式
CShort (exp) Short 将参数转换成Short类型,小数部分四舍五入。
CSng (exp) Single 将参数转换成Single类型。
CStr (exp) String 将参数转换成String类型,要注意的是若参数为Boolean类型,则返回的字符串为\"True\"或\"False\";若为Date类型,返回短日期格式显示。
CType 这个函数的调用形式为:Type (expression, typename),也就是将第一个参数转换为第二个参数所指定类型后返回。
六、 获取数据类型函数
语法:TypeName (VarName As Object ) As String
说明:TypeName ()函数可能用来获取参数VarName的数据类型,返回值为字符串。
七、检查数据类型函数
函数 说明
IsNothing (Obj) 检查参数是否已经初始化,若对象变量没有指向任何真实对象,返回True,否则返回Flase。
IsDbNull (Obj) 检查参数是否包含任何有效数据,是的话返回True,否则返回False。
IsError (Obj) 检查参数是否为错误代码,是的话返回True,否则返回False。
IsDate (Obj) 检查参数是否为Date类型或可以转换成为Date类型的字符串,是的话返回True,否则返回False。
IsNumeric (Obj) 检查参数是否为数值类型(Byte、Short、Integer、Single、Double、Decimal),是的话返回True,否则返回False。
IsReference (Obj) 检查参数是否为Object类型,是的话返回True,否则返回False。
IsArray (Obj) 检查参数是否为数组,是的话返回True,否则返回False。
(一)类型转换类函数
1. CType(X)
[格式]:
P=CBool(X)
' 将X转换为\"布尔\"(Boolean)类型
P=CByte(X)
' 将X转换为\"字节\"(Byte)类型
P=CCur(X)
' 将X转换为\"金额\"(Currency)类型
P=CDate(X)
' 将X转换为\"日期\"(Date)类型
P=CDbl(X)
' 将X转换为\"双精度\"(Double)类型
P=CInt(X)
' 将X转换为\"整型\"(Integer)类型
P=CLng(X)
' 将X转换为\"长整型\"(Long)类型
P=CSng(X)
' 将X转换为\"单精度\"(Single)类型
P=CStr(X)
' 将X转换为\"字符串\"(String)类型
P=Cvar(X)
' 将X转换为\"变体型\"(Variant)类型
P=CVErr(X)
' 将X转换为Error值
[ 范例 ]:
(1). CStr(13)+CStr(23)
' 数值转换成字符串后,用\"+\"号连接, 结果:1323
(2). CInt(\"12\")+12
' 字符串转换成整型后与12相加, 结果:24
(3). P=CInt(True)
' 输出结果为-1
' 布尔值与数值的转换时要注意,布尔值只有True和False,其中True在内存中为-1,False存为0
(4). CBool(-0.001)
' 输出结果为True
' 将数值转换为布尔型时,等于0的数值将得到False,不等于0的数值得到True.
2. Int(X),Fix(X):取X的整数值
[格式]:
P=Int(X) ' 取<=X的最大整数值
P=Fix(X) ' 取X的整数部分,直接去掉小数
[范例]:
(1) Int(-54.6)
' 结果为-55,取<=-54.6的最大整数
(2) Fix(54.6)
' 结果为54,取整数并直接去掉小数
(二)常用数学函数
[格式]:
1. Abs(N) 取绝对值
例:Abs(-3.5) 结果:3.5
2. Cos(N) 余弦函数
例:Cos(0) 结果:1
3. Exp(N) e为底的指数函数
例:Exp(3) 结果:20.068
4. Log(N) 以e为底的自然对数
例:Log(10) 结果:2.3
5. Rnd[(N) 产生随机数
例:Rnd 结果:0--1之间的数
6. Sin(N) 正弦函数
例:Sin(0) 结果:0
7. Sgn(N) 符号函数
' 说明:取正负号。Y=Sgn(X) 既 X>0 则Y=1;X=0 则Y=0;X<0 则Y= -1
8. Sqr(N) 平方根
例:Sqr(9) 结果:3
9. Tan(N) 正切函数
例:Tan(0) 结果:0
10.Atn(N) 反切函数
例:Atn(0) 结果:0
[注意]:在三角函数中,以弧度表示。
(一)字符串类函数:
1. ASC(X),Chr(X):转换字符字符码
[格式]:
P=Asc(X) 返回字符串X的第一个字符的字符码
P=Chr(X) 返回字符码等于X的字符
[范例]:
(1)P=Chr(65)
'输出字符A,因为A的ASCII码等于65
(2)P=Asc(\"A\")
'输出65
2. Len(X):计算字符串X的长度
[格式]:
P=Len(X)
[说明]:
空字符串长度为0,空格符也算一个字符,一个中文字虽然占用2 Bytes,但也算一个字符。
[范例]:
(1) 令X=\"\" (空字符串)
Len(X) 输出结果为0
(2) 令X=\"abcd\"
Len(X) 输出结果为4
(3) 令X=\"VB教程\"
Len(X) 输出结果为4
3. Mid(X)函数:读取字符串X中间的字符
[格式]:
P=Mid(X,n)
由X的第n个字符读起,读取后面的所有字符。
P=Mid(X,n,m)
由X的第n个字符读起,读取后面的m个字符。
[范例]:
(1) X=\"abcdefg\"
P=Mid(X,5)
结果为:P=\"efg\"
(2) X=\"abcdefg\"
P=Mid(X,2,4)
结果为P=\"bcde\"
4. Replace: 将字符串中的某些特定字符串替换为其他字符串
[格式]:
P=Replace(X,S,R)
[说明]:将字符串X中的字符串S替换为字符串R,然后返回。
[范例]:
X=\"VB is very good\"
P=Replace(X,good,nice)
输出结果为:P=\"VB is very nice\"
5. StrReverse:反转字符串
[格式]:
P=StrReverse(X)
[说明]:
返回X参数反转后的字符串
[范例]:
(1)X=\"abc\"
P=StrReverse(X)
输出结果:P=\"cba\"
6. Ucase(X),Lcase(X):转换英文字母的大小写
[格式]:
P=Lcase(X)
'将X字符串中的大写字母转换成小写
P=Ucase(X)
'将X字符串中的小写字母转换成大写
[说明]:除了英文字母外,其他字符或中文字都不会受到影响。
[范例]:
(1) 令 X=\"VB and VC\"
则Lcase(X)的结果为\"vb and vc\",Ucase(X)的结果为\"VB AND VC\"
7. InStr函数:寻找字符串
[格式]:
P=InStr(X,Y)
从X第一个字符起找出Y出现的位置
P=InStr(n,X,Y)
从X第n个字符起找出Y出现的位置
[说明]:
(1) 若在X中找到Y,则返回值是Y第一个字符出现在X中的位置。
(2) InStr(X,Y)相当于InStr(1,X,Y)。
(3) 若字符串长度,或X为空字符串,或在X中找不到Y,则都返回0。
(4) 若Y为空字符串,则返回0。
(二)日期时间类函数:
1. Year(X),Month(X),Day(X):取出年,月,日
[格式]:
P=Year(X)
取出X\"年\"部分的数值
P=Month(X)
取出X\"月\"部分的数值
P=Day(X)
取出X\"日\"部分的数值
[说明]:Year返回的是公元年,若X里只有时间,没有日期,则日期视为#1899/12/30#
2. Hour,Minute,Second函数:取出时,分,或秒
[格式]:
P=Hour(X)
取出X\"时\"部分的数值
P=Minute(X)
取出X\"分\"部分的数值
P=Second(X)
取出X\"秒\"部分的数值
[说明]:Hour的返回值是0---23之间
[范例]:
X=10:34:23
P=Hour(X)
Q=Minute(X)
R=Second(X)
则输出结果:P=10,Q=34,R=23
3. DateSerial函数:合并年,月,日成为日期
[格式]:DateSerial(Y,M,D)
其中Y是年份,M为月份,D为日期
[说明]:
(1) M值若大于12,则月份从12月起向后推算M-12个月;若小于1,则月份从1月起向后推算1-M个月。
(2) 若日期D大于当月的日数,则日期从当月的日数起,向后推算D-当月日数;若小于1,则日期从1日起向前推算1-D日。
[范例]:
P=DateSerial(2000,02,02)
则结果为P=2000/02/02
4.TimeSerial函数:合并时,分,秒成为时间
[格式]:P=TimeSerial(H,M,S)
其中H为小时数,M为分钟数,S为秒数
[说明]:推算原理同上面的DateSerial
[范例]:
P=TimeSerial(6,32,45)
结果为:P=6:32:45
5.Date,Time,Now函数:读取系统的日期时间
[格式]:
P=Date()
P=Time()
P=Now()
[说明]:这三个函数都无参数
[范例]:
若当前时间为2003年8月29日晚上19点26分45秒,则
P=Now()
结果为:P=2003-08-29 19:26:45
6.MonthName:返回月份名称
[格式]:P=MonthName(X)
[说明]:X参数可传入1---12,则返回值为\"一月\"、\"二月\"……,但是在英文Windows环境下,返回的是\"January\
[范例]:
P=MonthName(1)
则P=\"一月\"
7.WeekdayName:返回星期名称
[格式]:P=WeekdayName(X)
[说明]:X参数可传入1—7,则返回值为\"星期日\",\"星期一\"……,但是在英文windows环境下,返回的是\"Sunday\
[范例]:
P=WeekdayName(1)
结果为:P=\"星期日\"
函数名称 函数功能
Cbool(string) 转换为布尔值
Cbyte(string) 转换为字节类型的值
Ccur(string) 转换为货币类值
Cdate(string) 转换为日前类型的值
Cdbl(string) 转换为双精度值
Cint(string) 转换为整数值
Clng(string) 转换为长整型的值
Csng(string) 转换为单精度的值
Cstr(var) 转换为字符串值
Str(var) 数值转换为字符串
Val(string) 字符串转换为数值
***************************************
Abs(nmb) 返回数子的绝对值
Atn(nmb) 返回一个数的反正切
Cos(nmb) 返回一个角度的余炫值
Exp(nmb) 返回自然指数的次方值
Int(nmb) 返回数字的整形(进位)部份 8.4-->9
Fix(nmb) 返回数字的整形(舍去)部份 8.4-->8
Formatpercent(表达式) 返回百分比
Hex(nmb) 返回数据的16进制数
Log(nmb) 返回自然对数
Oct(nmb) 返回数字的8进制数
Rnd 返回大于“0”而小于“1”的随机数
Sgn(nmb) 判断一个数字的正负号
Sin(nmb) 返回角度的正铉值
Sqr(nmb) 返回数字的二次方根
Tan(nmb) 返回一个数的正切值
Asc(string) 返回ASCII字符串
Chr(charcode) 根据字符代码返回字符
Instr(string,searchstr) 返回被搜索字符串的第一个字符位置,string是字符串,searchstr是被搜索的字符串
InstrRev(string,searchstr) 同上,只是从右面开始搜索
Lcase(var) 把字符串变为小写
Left(string,nmb) 从string中返回从左面开始的nmb个字符串
Len(string) 返回字符串的长度
Ltrim(string) 截去字符串左边的空格
Filter(inputstrings,value) 返回字符串数组的字集,Inputstrings是字符串组,value是在数组中寻找的字符
Rtrim(string) 截去字符串右边的空格
Trim(string) 截去字符串前后空格
Mid(string,start,len) 在string中返回从start位置开始的len个字符
Replace(string,find,withstr) 在字符串string中,用withstr来替换find字符串
Right(string,nmb) 从string中返回从右面开始的nmb个字符串
Space(nmb) 返回指定空格的字符串
StrComp(string1,string2) 比较两个字符串
Ucase(string) 把字符串变为大写
****************************************
Date() 返回当前系统日期
DateAdd(interval,nmb,date) 用一个基础时间返回指定增加了时间间隔的日期,interval是间隔类型,yyyy-年,m-月,d-日,h-小时,n-分。
DateDiff(interval,nmb1,nmb2) 返回两个时间间隔,interval的意思同上
Datevalue(date) 发挥Date中的日期部份
Day(date) 返回天数
FormatDatetime(date) 返回格式化为日期的表达式
Hour(time) 返回时间的小时数
Minute(time) 返回时间的分钟数
Month(date) 返回日期中的月份
Now() 返回系统的日期和时间
Second(time) 返回时间中的秒数
Time() 返回系统的当前时间
Weekday(date) 返回星期几
WeekdayName(date) 返回星期几的中文名
Year(date) 返回年份
IsArray(var) 判断一个变量是否是数组
IsDate(var) 判断一个变量是否是日期
IsNull(var) 判断一个变量是否为空
IsNumeric 判断表达式是否包含数值
IsObject(var) 判断一个变量是否是对象
TypeName(var) 返回变量的数据类型
************************************
Array(list) 返回数组
CreateObject(class) 创建一个对象
GetObject(pathfilename) 得到文件对象
Inputbox(prompt) 提供一个可供输入数据的对话框
LBound(arrayP) 返回数组的最小索引
Msgbox(string) 输出一个消息框
Split(liststr) 从一个列表字符串中返回一个一维数组
Ubound(array) 返回数组的最大索引
因篇幅问题不能全部显示,请点此查看更多更全内容