本篇文章为大家展示了VBS中有哪些常用函数,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
vbs常用函数
函数名 | 语法 | 功能 |
Abs | Abs(number) | 返回一个数的绝对值 |
Sqr | Sqr(number) | 返回一个数的平方根 |
Sin | Sin(number) | 返回角度的正玄值 |
Cos | Cos(number) | 返回角度的余玄值 |
Tan | Tan(number) | 返回角度的正切值 |
Atn | Atn(number) | 返回角度的反正切值 |
Log | Log(number) | 返回一个数的自然对数 |
Int | Int(number) | 取整函数,返回一个小于number的第一整数 |
FormatNumber | FormatNumber(number, numdigitsafterdecimal) | 转化为指定小数位数(numdigitsafterdecimal)的数字 |
Rnd | Rnd() | 返回一个从0到1的随机数 |
Ubound | Ubound(数组名,维数) | 返回该数组的最大下标 |
Lbound | Lbound(数组名,维数) | 返回最小下标数 |
注释:
Rnd 函数
语法:Rnd[(number)]
返回一随机数。参数 number 可以是任何的数值表达式。
注解:
Rnd 函数返回的随机数介于 0 和 1 之间,可等于 0,但不等于 1。
number 的值会影响 Rnd 返回的随机数:
Number的取值 | 返回值 |
小于0 | 每次都是使用numbe当做随机结果。 |
大于0 | 随机序列中的下一个随机数。 |
等于0 | 最近一次产生过的随机数。 |
省略 | 随机序列中的下一个随机数。 |
各种转换函数及功能
函数 | 功能 |
CStr(variant) | 将变量variant转化为字符串类型 |
CDate(variant) | 将变量variant转化为日期类型 |
CInt(variant) | 将变量variant转化为整数类型 |
CLng(variant) | 将变量variant转化为长整数类型 |
CSng(variant) | 将变量variant转化为single类型 |
CDbl(variant) | 将变量variant转化为double类型 |
CBool(variant) | 将变量variant转化为布尔类型 |
注释:
1整型
以Integer 表示整型,其范围为 -32,768 到 32,767 之间。
长整型
Long(长整型) ,其范围从 -2,147,483,648 到 2,147,483,647。
单精度型(Single)
Single(单精度浮点型),它的范围在负数的时候是从 -3.402823E38 到 -1.401298E-45,而在正数的时候是从 1.401298E-45 到 3.402823E38。
双精度型(Double)
Double(双精度浮点型)它的范围在负数的时候是从 -1.79769313486232E308 到 -4.94065645841247E-324,而正数的时候是从 4.94065645841247E-324 到 1.79769313486232E308。
常用的字符串函数及功能
函数 | 语法 | 功能 |
Len | Len(string) | 返回string字符串里的字符数目 |
Trim | Trim(string) | 将字符串前后的空格去掉 |
Ltrim | Ltrim(string) | 将字符串前面的空格去掉 |
Rtrim | Rtrim(string) | 将字符串后面的空格去掉 |
Mid | Mid(string,start,length) | 从string字符串的start字符开始取得length长度的字符串,如果省略第三个参数表示从start字符开始到字符串结尾的字符串 |
Left | Left(string,length) | 从string字符串的左边取length长度的字符串 |
Right | Right(string,length) | 从srting字符串的右边取得length长度的字符串 |
LCase | LCase(string) | 将字符串里的所有大写字母转化成小写字母 |
UCase | UCase(string) | 将字符串里的小写字母转化成大写字母 |
StrComp | Strcomp(string1,string1) | 返回string1字符串与string2字符串的比较结果,如果两个字符串相同,返回0 |
InStr | InStr(string1,string2) | 返回string2字符串在string1字符串中第一次出现的位置 |
Split | Split(string1,delimiter | 将字符串根据delimiter拆分成一维数组,其中delimiter用于表示子字符串界限的字符,如果省略,使用空格(“”)当作分隔符 |
Replace | Replace(string1,find,replacewith) | 返回字符串,其中指定的子字符串(find)被替换为另一个子字符串(replacewith) |
常用的字符串函数及功能
函数 | 语法 | 功能 |
Len | Len(string) | 返回string字符串里的字符数目 |
Trim | Trim(string) | 将字符串前后的空格去掉 |
Ltrim | Ltrim(string) | 将字符串前面的空格去掉 |
Rtrim | Rtrim(string) | 将字符串后面的空格去掉 |
Mid | Mid(string,start,length) | 从string字符串的start字符开始取得length长度的字符串,如果省略第三个参数表示从start字符开始到字符串结尾的字符串 |
Left | Left(string,length) | 从string字符串的左边取length长度的字符串 |
Right | Right(string,length) | 从srting字符串的右边取得length长度的字符串 |
LCase | LCase(string) | 将字符串里的所有大写字母转化成小写字母 |
UCase | UCase(string) | 将字符串里的小写字母转化成大写字母 |
StrComp | Strcomp(string1,string1) | 返回string1字符串与string2字符串的比较结果,如果两个字符串相同,返回0 |
InStr | InStr(string1,string2) | 返回string2字符串在string1字符串中第一次出现的位置 |
Split | Split(string1,delimiter | 将字符串根据delimiter拆分成一维数组,其中delimiter用于表示子字符串界限的字符,如果省略,使用空格(“”)当作分隔符 |
Replace | Replace(string1,find,replacewith) | 返回字符串,其中指定的子字符串(find)被替换为另一个子字符串(replacewith) |
常用日期和时间函数及说明
函数 | 语法 | 功能 |
Now | Now() | 取得系统当前的日期和时间 |
Date | Date() | 取得系统当前的日期 |
Time | Time() | 取得系统当前的时间 |
Year | Year() | 取得给定日期的年份 |
Month | Month(Date) | 取得给定日期的月份 |
Day | Day(Date) | 取得给定日期是几号 |
Hour | Hour(time) | 取得给定时间是第几小时 |
Minute | Minute(time) | 取得给定时间是第几分钟 |
Second | Second(time) | 取得给定时间是第几秒 |
WeekDay | WeekDay(Date) | 取得给定日期是星期几的整数 1 表示星期一 2 表示星期二 依次类推 |
DateDiff | DateDiff(“Var”, Var1,Var2) Var:日期或时间间隔因子 Var1:第一个日期或时间 Var2:第二个日期或时间 | 计算两个日期或时间的间隔 |
DateAdd | DateAdd(“Var”, Var1,Var2) Var:日期或时间间隔因子 Var1:日期或时间 Var2:日期或时间 | 对两个日期或时间作加法 DateAdd(“d”,10,Date()) 10天后是几号 |
FormatDateTime | FortDateTime(Date,vbShortDate) | 转化为短日期格式 |
FortDateTime(Date,vblongDate) | 转化为长日期格式 | |
FortDateTime(Date,vbShortTime) | 转化为短时间格式 | |
FortDateTime(Date,vbLongTime) | 转化为长时间格式 |
日期或时间间隔因子
间隔因子 | yyyy | m | d | ww | h | s |
说明 | 年 | 月 | 日 | 星期 | 小时 | 秒 |
常用的检验函数及功能
函数 | 功能 |
VarType(variant) | 检查变量vriant的值,函数值为该变量的数据子类型,0表示空,2表示整数,7表示日子,8表示字符串,11表示布尔变量,8192表示数组 |
IsNumeric(variant) | 检查变量variant的值,如果variant是数值类型,则函数值为ture |
IsNull(variant) | 检查变量variant的值,如果variant为null,则函数值为ture |
IsEmpty(variant) | 检查变量的值,如果variant是empty,则函数值为ture |
IsObject(variant) | 检查变量variant的值,如果variant是对象类型,则函数值为ture |
IsDate(variant) | 检查变量variant的值,如果variant是日期类型,则函数值为ture |
IsArray(variant) | 检查变量variant的值,如果variant是数组类型,则函数值为ture |
下面给大家一个常见实例,大家可以运行测试
Option Explicit'*********************************Date/Time函数*******************************'CDate函数把一个合法的日期和事件表达式转换为Date类型,并返回结果Dim d1Dim d2Dim d3d1="April 22,2001"If IsDate(d1) Then MsgBox CDate(d1)End Ifd2=#2/22/01#If IsDate(d2) Then MsgBox CDate(d2)End Ifd3="3:18:40 AM"If IsDate(d3) Then MsgBox CDate(d3)End If'Date函数返回当前系统的日期'日期MsgBox Date'日期+时间MsgBox Now'时间MsgBox Time'DateAdd函数可返回已添加指定时间间隔的日期MsgBox DateAdd("yyyy",1,"31-Jan-2003")'加一年MsgBox DateAdd("yyyy",1,"31-Jan-2003")'减一年MsgBox DateAdd("q",1,"31-Jan-2003")'加一个季度MsgBox DateAdd("m",1,"31-Jan-2003")'加一个月MsgBox DateAdd("y",1,"31-Jan-2003")'当年的第几天MsgBox DateAdd("d",1,"31-Jan-2003")'增加一天MsgBox DateAdd("w",1,"31-Jan-2003")'当周的第几天MsgBox DateAdd("ww",1,"31-Jan-2003")'增加一个周MsgBox DateAdd("h",1,"31-Jan-2003")'某日期的第一个小时MsgBox DateAdd("n",1,"31-Jan-2003")'某日期的第一分钟MsgBox DateAdd("s",1,"31-Jan-2003")'某日期的第一秒'DateDiff函数可返回两个日期之间的时间间隔数MsgBox DateDiff("yyyy",Date,"31-Jan-2012")MsgBox DateDiff("q",Date,"31-Jan-2012")MsgBox DateDiff("m",Date,"31-Jan-2012")MsgBox DateDiff("y",Date,"31-Jan-2012")MsgBox DateDiff("d",Date,"31-Jan-2012")MsgBox DateDiff("w",Date,"31-Jan-2012")MsgBox DateDiff("ww",Date,"31-Jan-2012")MsgBox DateDiff("h",Date,"31-Jan-2012")MsgBox DateDiff("n",Date,"31-Jan-2012")MsgBox DateDiff("s",Date,"31-Jan-2012")'DatePart函数可返回给定日期的指定部分Dim dd="2/10/2012 16:25:56"MsgBox DatePart("yyyy",d)MsgBox DatePart("m",d)MsgBox DatePart("q",d)MsgBox DatePart("w",d)MsgBox DatePart("ww",d)MsgBox DatePart("y",d)MsgBox DatePart("s",d)MsgBox DatePart("h",d)MsgBox DatePart("n",d)MsgBox DatePart("d",d)'DateSerial函数可返回指定的年、月、日的子类型Date的VariantMsgBox DateSerial(2012,2,30)'DateValue函数返回一个日期类型MsgBox DateValue("31-Jan-2012 2:39:49 AM")'Day函数可返回介于1到31之间的一个代表月的天数的数字MsgBox Day(Date)'FormatDateTime函数可格式化并返回一个额合法的日期或时间表达式MsgBox FormatDateTime(Now,0)MsgBox FormatDateTime(Now,1)MsgBox FormatDateTime(Now,2)MsgBox FormatDateTime(Now,3)MsgBox FormatDateTime(Now,4)'Hour函数可返回介于0到23之间的代表天的小时数的数字MsgBox Hour(Now)'IsDate函数可返回一个布尔值,指示经计算的表达式是否可被转换为日期,如果表达式是日期或可被转换为日期,则返回True,否则,返回False。MsgBox IsDate("15-3-2012")'Minute函数可返回表示小时的分钟数的数字MsgBox Minute(Now)'Month函数可返回表示年的月份的数字MsgBox Month(Now)'Second函数可返回表示分钟的秒数的数字MsgBox Second(Now)'Time函数可返回当前的系统时间MsgBox Time'Timer函数可返回午夜12时以后已经过去的秒数MsgBox Timer'TimeSerial函数可把时、分、秒合并成为时间MsgBox TimeSerial(3,45,50)'TimeValue函数可返回包含时间的日期子类型的变量MsgBox TimeValue(Now)'Weekday函数可返回表示一周的天数的数字,介于1和7之间。MsgBox Weekday(Date,0)'WeekdayName函数可返回一周中指定一天的星期名MsgBox WeekdayName(3)MsgBox WeekdayName(Weekday(Date,1))'Year函数可返回表示年份的一个数字MsgBox Year(date)'*********************************Conversion函数*******************************'Asc函数可把字符串中的第一个字母转换为对应的ANSI代码,并返回结果MsgBox Asc("A")MsgBox Asc("a")'CBool函数可把表达式转换为布尔类型Dim aa=5MsgBox CBool(a)'CByte函数可把表达式转换为字节类型Dim bb=134.12345MsgBox CByte(b)'CCur函数可把表达式转换为货币类型Dim cc=12345.12345656MsgBox CCur(c)'CDbl函数可把表达式转换为双精度类型Dim ee=123.12454656577435235436MsgBox CDbl(e)'Chr函数可把指定的ANSI字符代码转换为字符MsgBox Chr(65)'CInt函数可把表达式转换为整数类型MsgBox CInt(12.3435)'CLng函数可把表达式转换为长整形类型MsgBox CLng(12.676)MsgBox CLng(12.243)'CSng函数可把表达式转换为单精度类型MsgBox CSng(122.355465)MsgBox CSng(21.23222)'CStr函数可把表达式转换为字符串类型MsgBox CStr(false)MsgBox CStr(Date)MsgBox CStr(Empty)MsgBox CStr(Error)'*********************************Format函数*******************************'FormatCurrency函数可返回作为货币值被格式化的表达式,使用系统控制面板中定义的货币符号MsgBox FormatCurrency(21.23456)'FormatNumber函数可返回作为数字被格式化的表达式MsgBox FormatNumber(12.23456775,3)'FormatPercent函数可返回作为百分数被格式化的表达式MsgBox FormatPercent(3/7,3)'*********************************Math函数*******************************'Abs函数可返回指定的数字的绝对值MsgBox Abs(-9)'Atn函数可返回指定数字的正切MsgBox Atn(9)'Cos函数可返回指定数字的余弦MsgBox Cos(9)'Exp函数可e的幂次方MsgBox Exp(2.3)'Fix函数可返回指定数字的整数部分MsgBox Fix(-6.325)MsgBox Int(-6.325)'Log函数可返回指定数据的自然对数MsgBox Log(10)'Rnd函数可返回一个随机数,数字总是小于1但大于或等于0.MsgBox Rnd'Sgn函数可返回指定数字的符号的整数MsgBox Sgn(15)MsgBox Sgn(-5)MsgBox Sgn(0)'Sin函数可返回指定数字的正弦MsgBox Sin(9)'Sqr函数可返回一个数的平方根MsgBox Sqr(9)'Tan函数可返回指定数字的正切MsgBox Tan(9)'*********************************Array函数*******************************'Array可返回一个包含数组的变量Dim ArrArr=Array(1,2,3,4,5)MsgBox Arr(0)'Filter函数可返回一个基于0的数组,此数组包含以特定过滤条件为基础的字符串数组的子集Dim Arr1(5),bArr1(0)="Saturday"Arr1(1)="Sunday"Arr1(2)="Monday"Arr1(3)="Tuesday"Arr1(4)="Wednesday"b=Filter(Arr1,"n",True)MsgBox b(0)MsgBox b(1)MsgBox b(2)'ISArray函数可返回一个指示指定的变量是否为数组的布尔值。如果变量为数组,则返回True,否则返回False。Dim a(3)a(0)=1a(1)=2a(2)=3MsgBox IsArray(a)'Join函数可返回一个由某个数组中一系列子字符串组成的字符串Dim a(5),ba(0)="Saturday"a(1)="Sunday"a(2)="Monday"a(3)="Wendesday"a(4)="Tuesday"b=Filter(a,"n",True)MsgBox Join(b,",")'LBound函数可返回指示数组维数的最小下标。(始终为0)'UBound函数可返回指示数组维数的最大下标。Dim a(5)MsgBox LBound(a)MsgBox UBound(a)'Split函数可返回基于0的一维数组,此数组包含指定的子字符串Dim txt,atxt="hello/world!"a=Split(txt,"/")MsgBox a(0)MsgBox a(1)'*********************************String函数*******************************'InStr函数可返回一个字符串在另一个字符串中首次出现的位置Dim txt,postxt="This is a beautiful day!"pos=InStr(4,txt,"is",1)MsgBox pos'InStrRev函数可返回一个字符串在另一个字符串中首次出现的位置,搜索从字符串的末端开始,但是返回的位置是从字符串的起点开始计数的。Dim txt,postxt="This is a beautiful day!"pos=InStrRev(txt,"i",-1,1)MsgBox pos'LCase函数可把指定的字符串转换为小写'UCase函数可把指定的字符串转换为大写Dim txt,pos1,pos2txt="This Is A Beautiful Day!"pos1=LCase(txt)pos2=UCase(txt)MsgBox pos1MsgBox pos2'Left函数可从字符串的左侧返回指定数目的字符'Right函数可从字符串的右侧返回指定数目的字符Dim txt,pos1,pos2txt="This is a beautiful day!"pos1=Left(txt,5)pos2=Right(txt,6)MsgBox pos1MsgBox pos2'Len函数可返回字符串中字符的数目Dim txt,postxt="This is a beautiful day!"pos=Len(txt)MsgBox pos'LTrim函数可删除字符串左侧的空格'RTrim函数可删除字符串右侧的空格'Trim函数可删除字符串两端的空格Dim txt,pos1,pos2,pos3txt=" This is a beautiful day! "pos1=LTrim(txt)pos2=RTrim(txt)pos3=Trim(txt)MsgBox pos1MsgBox pos2MsgBox pos3MsgBox Len(pos1)MsgBox Len(pos2)MsgBox Len(pos3)'Mid函数可从字符串中返回指定数目的字符Dim txttxt="This is a beautiful day!"MsgBox Mid(txt,1,5)MsgBox Mid(txt,2,5)MsgBox Mid(txt,1)MsgBox Mid(txt,5)'Replace函数可使用一个字符串替换另一个字符串指定的次数Dim txttxt="This is a beautiful day!"MsgBox Replace(txt,"is","AA",4,2)'Space函数可返回一个由指定数目的空格组成的字符串Dim txttxt=Space(20)MsgBox txtMsgBox Len(txt)'StrComp函数可比较两个字符串,并返回表示比较结果的一个值Dim txt1,txt2txt1="hello"txt2="hell"MsgBox StrComp(txt1,txt2)'String函数可返回包含指定长度的重复字符的一个字符串MsgBox String(10,"*")'StrReverse函数可反转一个字符串Dim txttxt="This is a beautiful day!"MsgBox StrReverse(txt)'*********************************其他函数*******************************'InputBox函数可显示一个对话框,用户可在其中输入文本或点击一个按钮。Dim fnamefname=InputBox("Enter your name:")MsgBox ("Your name is "&fname)'IsEmpty函数可返回指定的变量是否被初始化的布尔值。Dim x,yy=10MsgBox IsEmpty(x)MsgBox IsEmpty(y)'IsNull函数可返回指定表达式是否无效数据的布尔值Dim x,y,zx=Nully=10z=""MsgBox IsNull(x)MsgBox IsNull(y)MsgBox IsNull(z)'IsNumeric函数可返回指示指定的表达式是否可作为数字来计算的布尔值。Dim xx=10MsgBox IsNumeric(x)x=EmptyMsgBox IsNumeric(x)x="1 h"MsgBox IsNumeric(x)
上述内容就是VBS中有哪些常用函数,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网行业资讯频道。