VBS函数大全
Abs 函数 ......................................................................................................................................... 3
Array 函数 ...................................................................................................................................... 3
Asc 函数 .......................................................................................................................................... 4
Atn 函数 .......................................................................................................................................... 4
CBool 函数 ..................................................................................................................................... 5
CByte 函数 ..................................................................................................................................... 5
CCur 函数 ....................................................................................................................................... 6
CDate 函数 .................................................................................................................................... 7
CDbl 函数 ....................................................................................................................................... 7
Chr 函数.......................................................................................................................................... 8
CInt 函数 ........................................................................................................................................ 8
CLng 函数....................................................................................................................................... 9
Cos 函数 ....................................................................................................................................... 10
CreateObject 函数 .................................................................................................................... 10 CSng 函数 .................................................................................................................................... 12
CStr 函数 ..................................................................................................................................... 12
Date 函数 ..................................................................................................................................... 13
DateAdd 函数 ............................................................................................................................. 14
DateDiff 函数 .............................................................................................................................. 14
DatePart 函数 ........................................................................................................................... 15
DateSerial 函数 .......................................................................................................................... 17 DateValue 函数 .......................................................................................................................... 18 Day 函数 ....................................................................................................................................... 18
Eval 函数 ...................................................................................................................................... 19
Exp 函数 ....................................................................................................................................... 20
Filter 函数 ................................................................................................................................... 20
FormatCurrency 函数 .......................................................................................................... 22 FormatDateTime 函数 ......................................................................................................... 23 FormatNumber 函数 ............................................................................................................. 24 FormatPercent 函数 ............................................................................................................. 25 GetLocale 函数 ........................................................................................................................... 26
GetObject 函数........................................................................................................................... 27 GetRef 函数 ................................................................................................................................. 29
Hex 函数 ...................................................................................................................................... 30
Hour 函数 ..................................................................................................................................... 31
InputBox 函数 ............................................................................................................................ 31
InStr 函数 ................................................................................................................................... 32
InStrRev 函数........................................................................................................................... 34 Int、Fix 函数 ............................................................................................................................... 36
IsArray 函数 ................................................................................................................................ 36
IsDate 函数 ................................................................................................................................. 37
IsEmpty 函数 .............................................................................................................................. 38
IsNull 函数 ................................................................................................................................... 38
IsNumeric 函数 .......................................................................................................................... 39
IsObject 函数 .............................................................................................................................. 39
Join 函数 ....................................................................................................................................... 40
LBound 函数 ................................................................................................................................ 41
LCase 函数 ................................................................................................................................... 41
Left 函数 ....................................................................................................................................... 42
Len 函数 ....................................................................................................................................... 43
LoadPicture 函数 ....................................................................................................................... 43 Log 函数 ....................................................................................................................................... 44
LTrim、RTrim 和 Trim 函数 .................................................................................................... 44 Mid 函数 ........................................................................................................................................ 45
Minute ........................................................................................................................................... 46
Month 函数 .................................................................................................................................. 46
MonthName 函数....................................................................................................................... 46 MsgBox 函数 ............................................................................................................................. 47
Now ................................................................................................................................................ 49
Oct ................................................................................................................................................. 50
Replace 函数 ............................................................................................................................. 50
RGB 函数 ...................................................................................................................................... 52
Right 函数 .................................................................................................................................... 53
Rnd 函数 ...................................................................................................................................... 53
Round 函数 .................................................................................................................................. 54
Microsoft(R) Visual Basic(R) Scripting Edition .............................................................. 55
ScriptEngineMajorVersion 函数............................................................................................ 56 ScriptEngineMinorVersion 函数 ............................................................................................ 56 Second 函数 ................................................................................................................................ 57
SetLocale 函数 ........................................................................................................................... 57
Sgn 函数 ...................................................................................................................................... 58
Sin 函数 ........................................................................................................................................ 59
Space 函数 .................................................................................................................................. 60
Split 函数 .................................................................................................................................... 60
Sqr 函数 ........................................................................................................................................ 61
StrComp 函数 ........................................................................................................................... 62
String 函数 .................................................................................................................................. 63
StrReverse 函数 ......................................................................................................................... 64 Tan 函数 ........................................................................................................................................ 64
Time 函数 ..................................................................................................................................... 65
Timer 函数 ................................................................................................................................... 65
TimeSerial 函数 ......................................................................................................................... 65 TimeValue .................................................................................................................................... 66
TypeName 函数 ....................................................................................................................... 67 UBound 函数 ............................................................................................................................. 68
UCase 函数 .................................................................................................................................. 69
VarType 函数 ............................................................................................................................ 69
Weekday 函数 .......................................................................................................................... 70
WeekDayName 函数 ............................................................................................................. 72
Year 函数 ...................................................................................................................................... 73
VBS函数大全
Abs 函数
返回数字的绝对值。
Abs(number)
number 参数可以是任意有效的数值表达式。如果 number 包含 Null,则返回 Null;如果是未初始化变量,则返回 0。
说明
数字的绝对值是其无符号的数值大小。例如,Abs(-1) 和 Abs(1) 都返回 1。
下面示例利用 Abs 函数计算数字的绝对值:
Dim MyNumber
MyNumber = Abs(50.3 ) '返回 50.3。
MyNumber = Abs(-50.3) '返回 50.3。
Array 函数
返回包含数组的 Variant。
Array(arglist)
arglist 参数是赋给包含在 Variant 中的数组元素的值的列表(用逗号分隔)。如果没有指定此参数,则将会创建零长度的数组。
说明
用于引用数组元素的表示符,由跟随有括号的变量名组成,括号中包含指示所需元素的索引号。在下面的示例中,第一条语句创建名为 A 的变量。第二条语句将一个数组赋值给变量 A。最后一条语句将包含在第二个数组元素中的值赋值给另一个变量。
Dim A
A = Array(10,20,30)
B = A(2) ' B is now 30。
注意 未作为数组声明的变量仍可以包含数组。虽然包含数组的 Variant 变量与包含 Variant 元素的数组变量有概念上的不同,但访问数组元素的方法是相同的。
Asc 函数
返回与字符串的第一个字母对应的 ANSI 字符代码。
Asc(string)
string 参数是任意有效的字符串表达式。如果 string 参数未包含字符,则将发生运行时错误。 说明
下面例子中, Asc 返回每一个字符串首字母的 ANSI 字符代码:
Dim MyNumber
MyNumber = Asc("A") '返回 65。
MyNumber = Asc("a") '返回 97。
MyNumber = Asc("Apple") '返回 65。
注意 AscB 函数和包含字节数据的字符串一起使用。 AscB 不是返回第一个字符的字符代码,而是返回首字节。 AscW 是为使用 Unicode 字符的 32 位平台提供的。 它返回 Unicode (宽型)字符代码,因此可以避免从 ANSI 到 Unicode 的代码转换。
Atn 函数
返回数值的反正切值。
Atn(number)
number 参数可以是任意有效的数值表达式。
说明
Atn 函数计算直角三角形两个边的比值 (number) 并返回对应角的弧度值。此比值是该角对边的长度与邻边长度之比。 结果的范围是从 -pi/2 到 pi/2 弧度。
弧度变换为角度的方法是将弧度乘以 pi/180。反之,角度变换为弧度的方法是将角度乘以180/pi 。
下面的示例利用 Atn 来计算 pi 的值:
Dim pi
pi = 4 * Atn(1) ' 计算 pi 的值。
注意 Atn 是 Tan(将角作为参数返回直角三角形两边的比值)的反三角函数。不要混淆 Atn 与余切(正
切的倒数 (1/tangent))函数。
CBool 函数
返回表达式,此表达式已转换为 Boolean 子类型的 Variant。
CBool(expression)
expression 是任意有效的表达式。
说明
如果 expression 是零,则返回 False;否则返回 True。如果 expression 不能解释为数值,则将
发生运行时错误。
下面的示例使用 CBool 函数将一个表达式转变成 Boolean 类型。如果表达式所计算的值非零,则
CBool 函数返回 True;否则返回 False。
Dim A, B, Check
A = 5: B = 5 ' 初始化变量。
Check = CBool(A = B) '复选框设为 True 。
A = 0 '定义变量。
Check = CBool(A) '复选框设为 False 。
CByte 函数
返回表达式,此表达式已被转换为 Byte 子类型的 Variant。
CByte(expression)
expression 参数是任意有效的表达式。
说明
通常,可以使用子类型转换函数
书
关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf
写代码,以显示某些操作的结果应被表示为特定的数据类型,而不是默认类型。例如,在出现货币、单精度、双精度或整数运算的情况下,使用 CByte 强制执行字节运算。 CByte 函数用于进行从其他数据类型到 Byte 子类型的的国际公认的格式转换。例如对十进制分隔符(如千分符)的识别,可能取决于系统的区域设置。
如果 expression 在 Byte 子类型可接受的范围之外,则发生错误。下面的示例利用 CByte 函数把 expression 转换为 byte:
Dim MyDouble, MyByte
MyDouble = 125.5678 ' MyDouble 是一个双精度值。
MyByte = CByte(MyDouble) ' MyByte 包含 126 。
CCur 函数
返回表达式,此表达式已被转换为 Currency 子类型的 Variant。
CCur(expression)
expression 参数是任意有效的表达式。
说明
通常,您可以使用子类型数据转换函数书写代码,以显示某些操作的结果应当被表达为特定的数据类型,而非默认的数据类型。例如在整数运算的情况下,使用 CCur 函数强制进行货币计算。 CCur 函数用于进行从其他数据类型到 Currency 子类型的国际公认的格式转换。例如,对十进制分隔符和千位分隔符的识别取决于系统的区域设置。
下面的示例使用 CCur 函数将一个表达式转换成 Currency 类型:
Dim MyDouble, MyCurr
MyDouble = 543.214588 ' MyDouble 是双精度的。
MyCurr = CCur(MyDouble * 2) '把 MyDouble * 2 (1086.429176) 的结果转换为 Currency (1086.4292)。
CDate 函数
返回表达式,此表达式已被转换为 Date 子类型的 Variant。
CDate(date)
date 参数是任意有效的日期表达式。
说明
IsDate 函数用于判断 date 是否可以被转换为日期或时间。CDate 识别日期文字和时间文字,以及一些在可接受的日期范围内的数字。在将数字转换为日期时,数字的整数部分被转换为日期,分数部分被转换为从午夜开始计算的时间。
CDate 根据系统的区域设置识别日期格式。如果数据的格式不能被日期设置识别,则不能判断年、月、日的正确顺序。另外,如果长日期格式包含表示星期几的字符串,则不能被识别。 下面的示例使用 CDate 函数将字符串转换成日期类型。一般不推荐使用硬件译码日期和时间作为字符串(下面的例子已体现)。而使用时间和日期文字 (如 #10/19/1962#, #4:45:23 PM#)。 MyDate = "October 19, 1962" ' 定义日期。
MyShortDate = CDate(MyDate) ' 转换为日期数据类型。
MyTime = "4:35:47 PM" ' 定义时间。
MyShortTime = CDate(MyTime) ' 转换为日期数据类型。
CDbl 函数
返回表达式,此表达式已被转换为 Double 子类型的 Variant。
CDbl(expression)
expression 参数是任意有效的表达式。
说明
通常,您可以使用子类型数据转换函数书写代码,以显示某些操作的结果应当被表达为特定的数据类型,而非默认的数据类型。例如在出现货币或整数运算的情况下,使用 CDbl 或 CSng 函数强制进行双精度或单精度算术运算。
CDbl 函数用于进行从其他数据类型到 Double 子类型的国际公认的格式转换。例如,十进制分隔符和千位分隔符的识别取决于系统的区域设置。
下面的示例利用 CDbl 函数把 expression 转换为 Double。
Dim MyCurr, MyDouble
MyCurr = CCur(234.456784) ' MyCurr 是 Currency 型 (234.4567)。 MyDouble = CDbl(MyCurr * 8.2 * 0.01) ' 把结果转换为 Double 型 (19.2254576)。
Chr 函数
返回与指定的 ANSI 字符代码相对应的字符。
Chr(charcode)
charcode 参数是可以标识字符的数字。
说明
Chr(10) 返回换行符。 从 0 到 31 的数字表示
标准
excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载
的不可打印的 ASCII 代码。例如,
下面例子利用 Chr 函数返回与指定的字符代码相对应的字符: Dim MyChar
MyChar = Chr(65) '返回 A。
MyChar = Chr(97) '返回 a。
MyChar = Chr(62) '返回 >。
MyChar = Chr(37) '返回 %。
注意 ChrB 函数与包含在字符串中的字节数据一起使用。ChrB 不是返回一个或两个字节的字符,而总是
返回单个字节的字符。ChrW 是为使用 Unicode 字符的 32 位平台提供的。它的参数是一个 Unicode
(宽字符)的字符代码,因此可以避免将 ANSI 转化为 Unicode 字符。
CInt 函数
返回表达式,此表达式已被转换为 Integer 子类型的 Variant。 CInt(expression)
expression 参数是任意有效的表达式。
说明
通常,可以使用子类型转换函数书写代码,以显示某些操作的结果应被表示为特定的数据类型,而不是默认类型。例如,在出现货币、单精度或双精度运算的情况下,使用 CInt 或 CLng 强制执行整数运算。 CInt 函数用于进行从其他数据类型到 Integer 子类型的国际公认的格式转换。例如对十进制分隔符(如千分符)的识别,可能取决于系统的区域设置。
如果 expression 在 Integer 子类型可接受的范围之外,则发生错误。
下面的示例利用 CInt 函数把值转换为 Integer:
Dim MyDouble, MyInt
MyDouble = 2345.5678 ' MyDouble 是 Double。
MyInt = CInt(MyDouble) ' MyInt 包含 2346。
注意 CInt 不同于 Fix 和 Int 函数删除数值的小数部分,而是采用四舍五入的方式。 当小数部分正好等于 0.5 时, CInt 总是将其四舍五入成最接近该数的偶数。例如, 0.5 四舍五入为 0, 以及 1.5 四舍五入为 2.
CLng 函数
返回表达式,此表达式已被转换为 Long 子类型的 Variant。
CLng(expression)
expression 参数是任意有效的表达式。
说明
通常,您可以使用子类型数据转换函数书写代码,以显示某些操作的结果应当被表达为特定的数据类型,而非默认的数据类型。例如,在出现货币运算、单精度或双精度算术运算的情况下,使用 CInt 或 CLng 函数强制进行整数运算。
CLng 函数用于进行从其他数据类型到 Long 子类型的的国际公认的格式转换。例如,对十进制分隔符和千位分隔符的识别取决于系统的区域设置。
如果 expression 取值不在 Long子类型的允许范围内,则会出现错误。
下面的示例利用 CLng 函数把值转换为 Long:
Dim MyVal1, MyVal2, MyLong1, MyLong2 MyVal1 = 25427.45: MyVal2 = 25427.55 ' MyVal1, MyVal2 是双精度值。 MyLong1 = CLng(MyVal1) ' MyLong1 25427。
MyLong2 = CLng(MyVal2) ' MyLong2 包含 25428 。
Int 函数删除小数部分, 而是采用四舍五入的方式。 当小数部分正好等于 注意 CLng 不同于 Fix 和
0.5 时, CLng 函数总是将其四舍五入为最接近该数的偶数。如, 0.5 四舍五入为 0, 以及 1.5 四舍
五入为 2 。
Cos 函数
返回某个角的余弦值。
Cos(number)
number 参数可以是任何将某个角表示为弧度的有效数值表达式。 说明
Cos 函数取某个角并返回直角三角形两边的比值。此比值是直角三角形中该角的邻边长度与斜边长度之
比。 结果范围在 -1 到 1 之间。
角度转化成弧度方法是用角度乘以 pi/180 。 反之,弧度转化成角度的方法是用弧度乘以 180/pi 。
下面的示例利用 Cos 函数返回一个角的余弦值:
Dim MyAngle, MySecant
MyAngle = 1.3 ' 用弧度定义一个角。
MySecant = 1 / Cos(MyAngle) ' 计算正割。
CreateObject 函数
创建并返回对 Automation 对象的引用。
CreateObject(servername.typename [, location])
参数
servername
必选项。提供对象的应用程序名称。
typename
必选项。要创建的对象类型或类。
location
可选项。对象所在的网络服务器将被创建。
说明
Automation 服务器至少提供一种对象类型。例如,字处理应用程序可以提供应用程序对象、文档对象和工具条对象。
要创建 Automation 对象,将 CreateObject 函数返回的对象赋值给某对象变量: Dim ExcelSheet
Set ExcelSheet = CreateObject("Excel.Sheet")
上述代码启动创建对象(在此实例中,是 Microsoft Excel 电子表格)的应用程序。对象创建后,就可以在代码中使用定义的对象变量引用此对象。在下面的示例中,可使用对象变量、ExcelSheet 和其他 Excel 对象,包括 Application 对象和 Cells 集合访问新对象的属性和方法。例如:
' Make Excel visible through the Application object. ExcelSheet.Application.Visible = True
' Place some text in the first cell of the sheet. ExcelSheet.ActiveSheet.Cells(1,1).Value = "This is column A, row 1"
' Save the sheet.
ExcelSheet.SaveAs "C:\DOCS\TEST.XLS"
' Close Excel with the Quit method on the Application object.
ExcelSheet.Application.Quit
' Release the object variable.
Set ExcelSheet = Nothing
在远程服务器上创建一个对象,当 Internet 安全关闭时只能完成。通过传递计算机名到 CreateObject 服务器名的参数,能在远程网络上创建对象。该名称如同共享部份的机器名。例如网络共享名命名为: "\\myserver\public", servername 是 "myserver"。另外,只能指定 servername 使用 DNS 格式或 IP 地址。
以下代码返回运行在命名为"myserver"的远程网络计算机上 Excel 实例的版本号 : Function GetVersion
Dim XLApp
Set XLApp = CreateObject("Excel.Application", "MyServer")
GetVersion = XLApp.Version
End Function
错误发生在指定的远程服务器不存在或无法找到。
CSng 函数
返回表达式,该表达式已被转换为 Single 子类型的 Variant。
CSng(expression)
expression 参数是任意有效的表达式。
说明
通常,可以使用子类型转换函数书写代码,以显示某些操作的结果应被表示为特定的数据类型,而不是默认类型。例如,在出现货币或整数运算的情况下,使用 CDbl 或 CSng 强制执行双精度或单精度运算。 CSng 函数用于进行从其他数据类型到 Single 子类型的国际公认的格式转换。例如,对十进制分隔符(如千分符)的识别取决于系统的区域设置。
如果 expression 在 Single 子类型允许的范围之外,则发生错误。
下面的示例利用 CSng 函数把值转换为 Single:
Dim MyDouble1, MyDouble2, MySingle1, MySingle2 ' MyDouble1, MyDouble2 是双精度值。 MyDouble1 = 75.3421115: MyDouble2 = 75.3421555 MySingle1 = CSng(MyDouble1) ' MySingle1 包含 75.34211 。
MySingle2 = CSng(MyDouble2) ' MySingle2 包含 75.34216 。
CStr 函数
返回表达式,该表达式已被转换为 String 子类型的 Variant。
CStr(expression)
expression 参数是任意有效的表达式。
说明
通常,可以使用子类型转换函数书写代码,以显示某些操作的结果应被表示为特定的数据类型,而不是默
认类型。例如,使用 CStr 强制将结果表示为 String。 CStr 函数用于替代 Str 函数来进行从其他数据类型到 String 子类型的国际公认的格式转换。例如对十
进制分隔符的识别取决于系统的区域设置。
expression 根据下表决定返回的数据:
如果 expression 为 CStr 返回
字符串,包含 True 或 False。 Boolean
字符串,包含系统的短日期格式日期。 Date
运行时错误。 Null
零长度字符串 ("")。 Empty
字符串,包含跟随有错误号码的单词 Error。 Error
其他数值 字符串,包含此数字。
下面的示例利用 CStr 函数把数字转换为 String: Dim MyDouble, MyString MyDouble = 437.324 ' MyDouble 是双精度值。 MyString = CStr(MyDouble) ' MyString 包含 "437.324"。
Date 函数
返回当前系统日期。
Date
说明
下面的示例利用 Date 函数返回当前系统日期: Dim MyDate
MyDate = Date ' MyDate 包含当前系统日期。
DateAdd 函数
返回已添加指定时间间隔的日期。
DateAdd(interval, number, date)
参数
interval
必选项。字符串表达式,表示要添加的时间间隔。有关数值,请参阅“设置”部分。 number
必选项。数值表达式,表示要添加的时间间隔的个数。数值表达式可以是正数(得到未来的日期)或负数
(得到过去的日期)。
date
必选项。Variant 或要添加 interval 的表示日期的文字。
DateDiff 函数
返回两个日期之间的时间间隔。
DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear]]) DateDiff 函数的语法有以下参数:
参数
interval
必选项。String expression 表示用于计算 date1 和 date2 之间的时间间隔。有关数值,请参阅“设
置”部分。
date1, date2
必选项。日期表达式。用于计算的两个日期。
Firstdayofweek
可选项。指定星期中第一天的常数。如果没有指定,则默认为星期日。有关数值,请参阅“设置”部分。 Firstweekofyear
可选项。指定一年中第一周的常数。如果没有指定,则默认为 1 月 1 日所在的星期。有关数值,请参阅“设置”部分。
DatePart 函数
返回给定日期的指定部分。
DatePart(interval, date[, firstdayofweek[, firstweekofyear]])
Arguments
interval
必选项。字符串表达式表示要返回的时间间隔。有关数值,请参阅“设置”部分。
Date
必选项。要计算的日期表达式。
firstdayof week
可选项。指定星期中的第一天的常数。如果没有指定,则默认为星期日。有关数值,请参阅“设置”部分。 Firstweekofyear
可选项。指定一年中第一周的常数。如果没有指定,则默认为 1 月 1 日所在的星期。有关数值,请参阅“设置”部分。
设置
interval 参数可以有以下值:
设置 描述
年 yyyy
季度 q
月 m
一年的日数 y
日 d
一周的日数 w
周 ww
小时 h
分钟 n
秒 s
firstdayofweek 参数可以有以下值:
常数 值 描述
使用区域语言支持 (NLS) API 设置。 vbUseSystem 0
星期日(默认) vbSunday 1
星期一 vbMonday 2
星期二 vbTuesday 3
星期三 vbWednesday 4
星期四 vbThursday 5
星期五 vbFriday 6
星期六 vbSaturday 7
firstweekofyear 参数可以有以下值:
常数 值 描述
使用区域语言支持 (NLS) API 设置。 vbUseSystem 0
由 1 月 1 日所在的星期开始(默认)。 vbFirstJan1 1
由在新年中至少有四天的第一周开始。 vbFirstFourDays 2
由在新的一年中第一个完整的周(不跨年度)开始。 vbFirstFullWeek 3
说明
DatePart 函数用于计算日期并返回指定的时间间隔。例如使用 DatePart 计算某一天是星期几或当前
的时间。
firstdayofweek 参数会影响使用“w”和“ww”间隔符号的计算。
如果 date 是日期文字,则指定的年度会成为日期的固定部分。但是如果 date 被包含在引号 (" ") 中,并且省略年份,则在代码中每次计算 date 表达式时,将插入当前年份。这样就可以编写适用于不同年份的程序代码。.
下面的示例利用 DatePart 函数获得日期并显示该日所在的季节。
Function GetQuarter(TheDate)
GetQuarter = DatePart("q", TheDate)
End Function
DateSerial 函数
对于指定的年、月、日,返回 Date 子类型的 Variant。
DateSerial(year, month, day)
Arguments
Year
从 100 到 9999 之间的数字或数值表达式。
Month
任意数值表达式。
Day
任意数值表达式。
说明
要指定日期,如 1991 年 12 月 31 日,DateSerial 函数中每个参数的取值范围都应该是可接受的;即日的取值应在 1 和 31 之间,月的取值应在 1 和 12 之间。但是,也可以使用表示某日之前或之后的年、月、日数目的数值表达式为每个参数指定相对日期。
以下样例中使用了数值表达式代替绝对日期。在这里,DateSerial 函数返回 1990 年 8 月 1 日之前十年 (1990 - 10) 零两个月 (8 - 2) 又一天 (1 - 1) 的日期:即 1980 年 5 月 31 日。 Dim MyDate1, MyDate2
MyDate1 = DateSerial(1970, 1, 1) ' Returns January 1, 1970. MyDate2 = DateSerial(1990 - 10, 8 - 2, 1 - 1) ' Returns May 31, 1980.
对于 year 参数,若取值范围是从 0 到 99,则被解释为 1900 到 1999 年。对于此范围之外的 year 参数,则使用四位数字表示年份(例如 1800 年)。
当任何一个参数的取值超出可接受的范围时,则会适当地进位到下一个较大的时间单位。例如,如果指定了 35 天,则这个天数被解释成一个月加上多出来的日数,多出来的日数取决于其年份和月份。但是如果参数值超出 -32,768 到 32,767 的范围,或者由三个参数指定(无论是直接还是通过表达式指定)的日期超出了可以接受的日期范围,就会发生错误。
DateValue 函数
返回 Date 子类型的 Variant。
DateValue(date)
date 参数应是字符串表达式,表示从 100 年 1 月 1 日到 9999 年 12 月 31 日中的一个日期。但是,date 也可以是表示上述范围内的日期、时间或日期时间混合的任意表达式。
说明
如果 date 参数包含时间信息,则 DateValue 不会返回时间信息。但是如果 date 包含无效的时间信息(如 "89:98"),就会出现错误。
如果 date 是某一字符串,其中仅包含由有效的日期分隔符分隔开的数字,则 DateValue 将会根据为系统指定的短日期格式识别月、日和年的顺序。DateValue 还会识别包含月份名称(无论是全名还是缩写)的明确日期。例如,除了能够识别 12/30/1991 和 12/30/91 之外,DateValue 还能识别 December 30, 1991 和 Dec 30, 1991。
如果省略了 date 的年份部分,DateValue 将使用计算机系统日期中的当前年份。 下面的示例利用 DateValue 函数将字符串转化成日期。也可以利用日期文字直接将日期分配给 Variant 变量, 例如, MyDate = #9/11/63#.
Dim MyDate
MyDate = DateValue("September 11, 1963") ' 返回日期。
Day 函数
返回 1 到 31 之间的一个整数(包括 1 和31),代表某月中的一天。
date 参数是任意可以代表日期的表达式。如果 date 参数中包含 Null,则返回 Null。 下面例子利用 Day 函数得到一个给定日期月的天数:
Dim MyDay
MyDay = Day("October 19, 1962") 'MyDay 包含 19。
Eval 函数
计算一个表达式的值并返回结果。
[result = ]Eval(expression)
参数
result
可选项。 是一个变量,用于接受返回的结果。如果未指定结果,应考虑使用 Execute 语句代替。 expression
必选项。可以是包含任何有效 VBScript 表达式的字符串。
说明
在 VBScript 中,x = y 可以有两种解释。第一种方式是赋值语句,将 y 的值赋予 x。第二种解释是测试 x 和 y 是否相等。如果相等,result 为 True;否则 result 为 False。Eval 方法总是采用第二种解释,而 Execute 语句总是采用第一种。
注意 在Microsoft(R) Visual Basic Scripting Edition 中不存在这种比较与赋值的混淆,因为赋值运算符(=)与比较运算符 (==)不同。
下面的例子说明了 Eval 函数的用法:
Sub GuessANumber
Dim Guess, RndNum
RndNum = Int((100) * Rnd(1) + 1)
Guess = CInt(InputBox("Enter your guess:",,0))
Do
If Eval("Guess = RndNum") Then
MsgBox "祝贺你~猜对了~"
Exit Sub
Else
Guess = CInt(InputBox("对不起,请再试一次",,0))
End If
Loop Until Guess = 0
End Sub
Exp 函数
返回 e(自然对数的底)的幂次方。
Exp(number)
number 参数可以是任意有效的数值表达式。
说明
如果 number 参数超过 709.782712893,则出现错误。常数 e 的值约为 2.718282。
注意 Exp 函数完成 Log 函数的反运算,并且有时引用为反对数形式。 下面的示例利用 Exp 函数返回 e 的幂次方:
Dim MyAngle, MyHSin ' 用弧度定义角。
MyAngle = 1.3 '计算双曲线的正弦。
MyHSin = (Exp(MyAngle) - Exp(-1 * MyAngle)) / 2
Filter 函数
返回下标从零开始的 数组,其中包含以特定过滤条件为基础的字符串数组的子集。
Filter(InputStrings, Value[, Include[, Compare]]) 参数
InputStrings
必选项。一维数组,要在其中搜索字符串。
Value
必选项。要搜索的字符串。
Include
可选项。Boolean 值,指定返回的子字符串是否包含 Value。如果 Include 为 True,Filter 将返回
包含子字符串 Value 的数组子集。如果 Include 为 False,Filter 将返回不包含子字符串 Value 的
数组子集。
Compare
可选项。数字值指出使用的比较字符串 类型.请参阅值设置部分. 设置
Compare 参数可以有以下值:
常数 值 描述
执行二进制比较。 vbBinaryCompare 0
执行文本比较。 vbTextCompare 1
说明
如果在 InputStrings 中没有找到与 Value 匹配的值,Filter 将返回空数组。如果 InputStrings 为
Null 或者不是一维数组,则会发生错误。
由 Filter 函数返回的数组仅包含足以包含匹配项数目的元素。 下面例子利用 Filter 函数返回包含搜索条件 "Mon" 的数组: Dim MyIndex
Dim MyArray (3)
MyArray(0) = "Sunday"
MyArray(1) = "Monday"
MyArray(2) = "Tuesday"
MyIndex = Filter(MyArray, "Mon") 'MyIndex(0) 包含 "Monday"。
FormatCurrency 函数
返回表达式,此表达式已被格式化为货币值(使用系统控制面板中定义的货币符号)。 FormatCurrency(
expression[,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers
[,GroupDigits]]]]
)
参数
Expression
必选项。要被格式化的表达式。
NumDigitsAfterDecimal
可选项。指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是计算机的区域设置。 IncludeLeadingDigit
可选项。三态常数,指示是否显示小数值小数点前面的零。有关数值,请参阅“设置”部分。 UseParensForNegativeNumbers
可选项。三态常数,指示是否将负值置于括号中。有关数值,请参阅“设置”部分。 GroupDigits
可选项。三态常数,指示是否使用计算机区域设置中指定的数字分组符号将数字分组。有关数值,请参阅“设置”部分。
设置
IncludeLeadingDigit、UseParensForNegativeNumbers 和 GroupDigits 参数可以有以下值:
常数 值 描述
TristateTrue -1 True
TristateFalse 0 False
使用计算机区域设置中的设置。 TristateUseDefault -2
说明
当省略一个或多个可选项参数时,由计算机区域设置提供被省略参数的值。 与货币值相关的货币符号的位置由系统的区域设置决定。
注意 除“显示起始的零”设置来自区域设置的“数字”附签外,所有其他设置信息均取自区域设置的“货币”附签。
下面例子利用 FormatCurrency 函数把 expression 格式化为 currency 并且赋值给 MyCurrency:
Dim MyCurrency
MyCurrency = FormatCurrency(1000) 'MyCurrency 包含 $1000.00 。
FormatDateTime 函数
返回表达式,此表达式已被格式化为日期或时间。
FormatDateTime(Date[, NamedFormat])
参数
Date
必选项。要被格式化的日期表达式。
NamedFormat
可选项。指示所使用的日期/时间格式的数值,如果省略,则使用 vbGeneralDate。 设置
NamedFormat 参数可以有以下值:
常数 值 描述
显示日期和/或时间。如果有日期部分,则将该部分显示为短日期格式。如vbGeneralDate 0
果有时间部分,则将该部分显示为长时间格式。如果都存在,则显示所有部
分。
使用计算机区域设置中指定的长日期格式显示日期。 vbLongDate 1
使用计算机区域设置中指定的短日期格式显示日期。 vbShortDate 2
使用计算机区域设置中指定的时间格式显示时间。 vbLongTime 3
使用 24 小时格式 (hh:mm) 显示时间。 vbShortTime 4
说明
下面例子利用 FormatDateTime 函数把表达式格式化为长日期型并且把它赋给 MyDateTime:
Function GetCurrentDate
'FormatDateTime 把日期型格式化为长日期型。
GetCurrentDate = FormatDateTime(Date, 1)
End Function
FormatNumber 函数
返回表达式,此表达式已被格式化为数值。
FormatNumber(
expression [,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers
[,GroupDigits]]]]
)
Arguments
Expression
必选项。要被格式化的表达式。
NumDigitsAfterDecimal
可选项。指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是计算机的区域设置。 IncludeLeadingDigit
可选项。三态常数,指示是否显示小数值小数点前面的零。有关数值,请参阅“设置”部分。 UseParensForNegativeNumbers
可选项。三态常数,指示是否将负值置于括号中。有关数值,请参阅“设置”部分。 GroupDigits
可选项。三态常数,指示是否使用计算机区域设置中指定的数字分组符号将数字分组。有关数值,请参阅“设置”部分。
设置
IncludeLeadingDigit、UseParensForNegativeNumbers 和 GroupDigits 参数可以有以下值:
常数 值 描述
TristateTrue -1 True
TristateFalse 0 False
使用计算机区域设置中的设置。 TristateUseDefault -2
说明
当省略一个或多个可选项参数时,由计算机区域设置提供被省略参数的值。 注意 所有设置信息均取自区域设置的“数字”附签。
下面例子利用 FormatNumber 函数把数值格式化为带四位小数点的数:
Function FormatNumberDemo
Dim MyAngle, MySecant, MyNumber
MyAngle = 1.3 ' 用弧度定义角。
MySecant = 1 / Cos(MyAngle) ' 计算正割值。
FormatNumberDemo = FormatNumber(MySecant,4) ' 把 MySecant 格式化为带四位小数点的
数。
End Function
FormatPercent 函数
返回表达式,此表达式已被格式化为尾随有 % 符号的百分比(乘以 100 )。 FormatPercent(expression[,NumDigitsAfterDecimal [,IncludeLeadingDigit
[,UseParensForNegativeNumbers [,GroupDigits]]]])
FormatPercent 函数的语法有以下参数:
参数
Expression
必选项。要被格式化的表达式。
NumDigitsAfterDecimal
可选项。指示小数点右侧显示位数的数值。默认值为 -1,指示使用的是计算机的区域设置。 IncludeLeadingDigit
可选项。三态常数,指示是否显示小数值小数点前面的零。有关数值,请参阅“设置”部分。 UseParensForNegativeNumbers
可选项。三态常数,指示是否将负值置于括号中。有关数值,请参阅“设置”部分。 GroupDigits
可选项。三态常数,指示是否使用计算机区域设置中指定的数字分组符号将数字分组。有关数值,请参阅“设置”部分。
设置
IncludeLeadingDigit、UseParensForNegativeNumbers 和 GroupDigits 参数可以有以下值:
常数 值 描述
TristateTrue -1 True
TristateFalse 0 False
使用计算机区域设置中的设置。 TristateUseDefault -2
说明
当省略一个或多个可选项参数时,由计算机区域设置提供被省略参数的值。 注意 所有设置信息均取自区域设置的“数字”附签。
下面例子利用 FormatPercent 函数把表达式格式化为百分数:
Dim MyPercent
MyPercent = FormatPercent(2/32) 'MyPercent 包含 6.25%。
GetLocale 函数
返回当前区域设置 ID 值。
GetLocale()
说明
locale 是用户参考信息集合,与用户的语言、国家和文化传统有关。locale 决定键盘布局、字母排序顺序和日期、时间、数字与货币格式。
返回值可以是任意一个 32-位 的值,如 区域设置 ID所示:
下面举例说明 GetLocale 函数的用法。要使用该代码,请复制标准HTML 文件中
Here's the US equivalent:
Enter a price in German:
Here's the UK equivalent:
GetObject 函数
返回对文件中 Automation 对象的引用。
GetObject([pathname] [, class])
参数
Pathname
可选项。字符串,包含待检索对象的文件的完整路径和名称。如果省略 pathname 则必须有 class。 Class
可选项。字符串,对象的类。
class 参数的语法格式为 appname.objectype,其中包括以下部分:
参数
appname
必选项。字符串,提供对象的应用程序名称。
objectype
必选项。字符串,要创建的对象的类型或类。
说明
使用 GetObject 函数可以访问文件中的 Automation 对象,而且可以将该对象赋值给对象变量。使用 Set 语句将 GetObject 返回的对象赋值给对象变量。例如:
Dim CADObject
Set CADObject = GetObject("C:\CAD\SCHEMA.CAD")
在执行上述代码时,就会启动与指定路径名相关联的应用程序,同时激活指定文件中的对象。如果 pathname 是零长度字符串 (""),GetObject 返回指定类型的新对象实例。如果省略 pathname 参数,GetObject 将返回指定类型的当前活动对象。如果没有指定类型的对象,就会出现错误。 某些应用程序允许只激活文件的一部分,方法是在文件名后加上一个惊叹号 (!) 以及用于标识要激活的文件部分的字符串。有关创建这种字符串的详细信息,请参阅创建对象的应用程序的有关文档。 例如,在绘图应用程序中,一个存放在文件中的图可能有多层。可以使用下述代码来激活图 SCHEMA.CAD 中的某一层:
Set LayerObject = GetObject("C:\CAD\SCHEMA.CAD!Layer3")
如果没有指定对象的类,则 Automation 会根据所提供的文件名,确定要启动的应用程序以及要激活的对象。但是,有些文件可能支持多个对象类。例如,图可能支持三种不同类型的对象:Application 对象、Drawing 对象和 Toolbar 对象,所有这些都是同一个文件中的一部分。使用可选项的 class 参数可以指定文件中要激活的对象。例如:
Dim MyObject
Set MyObject = GetObject("C:\DRAWINGS\SAMPLE.DRW", "FIGMENT.DRAWING") 在上述样例中,FIGMENT 是绘图应用程序的名称,而 DRAWING 则是它支持的一种对象类型。对象被激活之后,就可以在代码中使用所定义的对象变量来引用它。在前面的例子中,可以使用对象变量
属性和方法。例如: MyObject 访问新对象的
MyObject.Line 9, 90
MyObject.InsertText 9, 100, "嗨,你好~"
MyObject.SaveAs "C:\DRAWINGS\SAMPLE.DRW" 注意 在对象的当前实例存在,或者要用已加载的文件创建对象时,请使用 GetObject 函数。如果没有当前实例,并且不准备使用已加载的文件启动对象,请使用 CreateObject 函数。 如果对象已注册为单个实例的对象,则无论执行多少次 CreateObject,都只能创建该对象的一个实例。若使用单个实例对象,当使用零长度字符串 ("") 语法调用时,GetObject 总是返回同一个实例,而如果省略 pathname 参数,则会出现错误。
GetRef 函数
返回一个指向一过程的引用,此过程可绑定某事件。
Set object.eventname = GetRef(procname)
参数
object
必选项。事件所关联的对象的名称。
eventname
必选项。要与函数绑定的事件的名称。
procname
必选项。该字符串中包含 Sub 或 Function 过程的名称,该过程与事件关联。 说明
GetRef 函数可以用来将 VBScript 过程 (Function 或 Sub) 与 DHTML (动态 HTML)页面中可用的任何事件联系在一起。DHTML 对象模型为不同对象提供了与各种可用事件有关的信息。 在其他脚本和程序
设计
领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计
语言中,GetRef 所提供的功能被称为函数指针,即它指向了在指定事件发生时要执行的过程的地址。
下面的例子说明了 GetRef 函数的使用:
Hex 函数
返回表示十六进制数字值的字符串。
Hex(number)
number 参数是任意有效的表达式。
说明
如果 number 参数不是整数,则在进行运算前将其四舍五入为最接近的整数。
如果 number 是 Hex 返回
Null。 Null
零 (0)。 Empty
其他数 最大到八位的十六进制字符。
您可以通过在数字前面添加前缀 &H 来表示十六进制数。例如,在十六进制计数法中,&H10 表示十进制数 16。
下面的示例利用 Hex 函数返回数字的十六进制数:
Dim MyHex
MyHex = Hex(5) ' 返回 5。
MyHex = Hex(10) ' 返回A。
MyHex = Hex(459) ' 返回 1CB。
Hour 函数
返回 0 到 23 之间的一个整数(包括 0 和 23),代表一天中的某一小时。 Hour(time)
time 参数是任意可以代表时间的表达式。如果 time 参数中包含 Null,则返回 Null。 下面的示例利用 Hour 函数得到当前时间的小时:
Dim MyTime, MyHour
MyTime = Now
MyHour = Hour(MyTime)
' MyHour 包含代表当前时间的数值。
InputBox 函数
在对话框中显示提示,等待用户输入文本或单击按钮,并返回文本框内容。 InputBox(prompt[,
title][,default][,xpos][,ypos][,helpfile,context])
参数
prompt
字符串表达式,作为消息显示在对话框中。prompt 的最大长度大约是 1024 个字符,这取决于所使用
的字符的宽度。如果 prompt 中包含多个行,则可在各行之间用回车符 (Chr(13))、换行符 (Chr(10))
或回车换行符的组合 (Chr(13) & Chr(10)) 以分隔各行。
Title
显示在对话框标题栏中的字符串表达式。如果省略 title,则应用程序的名称将显示在标题栏中。 Default
显示在文本框中的字符串表达式,在没有其它输入时作为默认的响应值。如果省略 default,则文本框为空。
Xpos
数值表达式,用于指定对话框的左边缘与屏幕左边缘的水平距离(单位为缇)。如果省略 xpos,则对话框会在水平方向居中。
Ypos
数值表达式,用于指定对话框的上边缘与屏幕上边缘的垂直距离(单位为缇)。如果省略 ypos,则对话框显示在屏幕垂直方向距下边缘大约三分之一处。
Helpfile
字符串表达式,用于标识为对话框提供上下文相关帮助的帮助文件。如果已提供 helpfile,则必须提供 context。
Context
数值表达式,用于标识由帮助文件的作者指定给某个帮助主题的上下文编号。如果已提供 context,则必须提供 helpfile。
说明
如果同时提供了 helpfile 和 context,就会在对话框中自动添加“帮助”按钮。
如果用户单击确定或按下 ENTER,则 InputBox 函数返回文本框中的内容。如果用户单击取消,则函数返回一个零长度字符串 ("")。
下面例子利用 InputBox 函数显示一输入框并且把字符串赋值给输入变量:
Dim Input
Input = InputBox("输入名字")
MsgBox ("输入:" & Input)
InStr 函数
返回某字符串在另一字符串中第一次出现的位置。
InStr([start, ]string1, string2[, compare])
参数
start
可选项。数值表达式,用于设置每次搜索的开始位置。如果省略,将从第一个字符的位置开始搜索。如果
start 包含 Null,则会出现错误。如果已指定 compare,则必须要有 start 参数。
string1
必选项。接受搜索的字符串表达式。
string2
必选项。要搜索的字符串表达式。
compare
可选项。指示在计算子字符串时使用的比较类型的数值。有关数值,请参阅“设置”部分。如果省略,将执
行二进制比较。
设置
compare 参数可以有以下值:
常数 值 描述
执行二进制比较。 vbBinaryCompare 0
执行文本比较。 vbTextCompare 1
返回值
InStr 函数返回以下值:
如果 InStr 返回 string1 为零长度 0
string1 为 Null Null
string2 为零长度 start
string2 为 Null Null
string2 没有找到 0
在 string1 中找到 string2 找到匹配字符串的位置 start > Len(string2) 0
说明
下面的示例利用 InStr 搜索字符串:
Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" ' String to search in. SearchChar = "P" ' Search for "P".
MyPos = Instr(4, SearchString, SearchChar, 1) ' A textual comparison starting at position
4. Returns 6.
MyPos = Instr(1, SearchString, SearchChar, 0) ' A binary comparison starting at position
1. Returns 9.
MyPos = Instr(SearchString, SearchChar) ' Comparison is binary by default (last argument
is omitted). Returns 9.
MyPos = Instr(1, SearchString, "W") ' A binary comparison starting at position 1. Returns
0 ("W" is not found).
注意 InStrB 函数使用包含在字符串中的字节数据,所以 InStrB 返回的不是一个字符串在另一个字符串中第一次出现的字符位置,而是字节位置。
InStrRev 函数
返回某字符串在另一个字符串中出现的从结尾计起的位置。
InStrRev(string1, string2[, start[, compare]])
参数
string1
必选项。接受搜索的字符串表达式。
string2
必选项。被搜索的字符串表达式。
Start
可选项。数值表达式,用于设置每次搜索的开始位置。如果省略,则默认值为 -1,表示从最后一个字符的位置开始搜索。如果 start 包含 Null,则出现错误
compare
可选项。在计算子字符串时,指示要使用的比较类型的数值。如果省略,将执行二进制比较。有关数值,请参阅“设置”部分。
设置
compare 参数可以有以下值:
常数 描述 Value
执行二进制比较。 vbBinaryCompare 0
执行基于包含在数据库(在此数据库中执行比较)中的信息的比vbDatabaseCompare 2
较。
返回值
InStrRev 返回以下值:
如果 InStrRev 返回
string1 为零长度 0
string1 为 Null Null
string2 为零长度 start
string2 为 Null Null
string2 没有找到 0
在 string1 中找到 string2 找到匹配字符串的位置
start > Len(string2) 0
说明
下面的示例利用 InStrRev 函数搜索字符串:
Dim SearchString, SearchChar, MyPos SearchString ="XXpXXpXXPXXP" ' String to search in.
SearchChar = "P" ' Search for "P". MyPos = InstrRev(SearchString, SearchChar, 10, 0) ' A binary comparison starting at posi
tion 10. Returns 9.
MyPos = InstrRev(SearchString, SearchChar, -1, 1) ' A textual comparison starting at the
last position. Returns 12.
MyPos = InstrRev(SearchString, SearchChar, 8) ' Comparison is binary by default (last ar
gument is omitted). Returns 0.
注意 InStrRev 函数的语法与 InStr 函数的语法并不一样。
Int、Fix 函数
返回数字的整数部分。
Int(number)
Fix(number)
number 参数可以是任意有效的数值表达式。如果 number 参数包含 Null,则返回 Null。 说明
Int 和 Fix 函数都删除 number 参数的小数部分并返回以整数表示的结果。 Int 和 Fix 函数的区别在于如果 number 参数为负数时,Int 函数返回小于或等于 number 的第一
个负整数,而 Fix 函数返回大于或等于 number 参数的第一个负整数。例如,Int 将 -8.4 转换为 -9,
而 Fix 函数将 -8.4 转换为 -8。
Fix(number) 等同于:
Sgn(number) * Int(Abs(number))
下面的示例说明 Int 和 Fix 函数如何返回数字的整数部分:
MyNumber = Int(99.8) ' 返回 99。
MyNumber = Fix(99.2) ' 返回 99。
MyNumber = Int(-99.8) ' 返回 -100。
MyNumber = Fix(-99.8) ' 返回-99。
MyNumber = Int(-99.2) ' 返回 -100。
MyNumber = Fix(-99.2) ' 返回 -99。
IsArray 函数
返回 Boolean 值指明某变量是否为数组。
IsArray(varname)
varname 参数可以是任意变量。
说明
如果变量是数组,IsArray 函数返回 True;否则,函数返回 False。当变量中包含有数组时,使用 IsArray 函数很有效。
下面的示例利用 IsArray 函数验证 MyVariable 是否为一数组:
Dim MyVariable
Dim MyArray(3)
MyArray(0) = "Sunday"
MyArray(1) = "Monday"
MyArray(2) = "Tuesday"
MyVariable = IsArray(MyArray) ' MyVariable 包含 "True"。
IsDate 函数
返回 Boolean 值指明某表达式是否可以转换为日期。
IsDate(expression)
expression 参数可以是任意可被识别为日期和时间的日期表达式或字符串表达式。 说明
如果表达式是日期或可合法地转化为有效日期,则 IsDate 函数返回 True;否则函数返回 False。在 Microsoft Windows 操作系统中,有效的日期范围公元 100 年 1 月 1 日到公元 9999 年 12 月 31 日;合法的日期范围随操作系统不同而不同。
下面的示例利用 IsDate 函数决定表达式是否能转换为日期型:
Dim MyDate, YourDate, NoDate, MyCheck MyDate = "October 19, 1962": YourDate = #10/19/62#: NoDate = "Hello"
MyCheck = IsDate(MyDate) ' 返回 True。
MyCheck = IsDate(YourDate) ' 返回 True。
MyCheck = IsDate(NoDate) ' 返回 False。
IsEmpty 函数
返回 Boolean 值指明变量是否已初始化。
IsEmpty(expression)
expression 参数可以是任意表达式。然而,由于 IsEmpty 用于判断一个变量是否已初始化,故 expression 参数经常是一个变量名。
说明
如果变量未初始化或显式地设置为 Empty,则函数 IsEmpty 返回 True;否则函数返回 False。如果 expression 包含一个以上的变量,总返回 False。
下面的示例利用 IsEmpty 函数决定变量是否能被初始化:
Dim MyVar, MyCheck
MyCheck = IsEmpty(MyVar) ' 返回 True。
MyVar = Null ' 赋为 Null。
MyCheck = IsEmpty(MyVar) ' 返回 False。
MyVar = Empty ' 赋为 Empty。
MyCheck = IsEmpty(MyVar) ' 返回 True。
IsNull 函数
返回 Boolean 值,指明表达式是否不包含任何有效数据 (Null)。
IsNull(expression)
expression 参数可以是任意表达式。
说明
如果 expression 为 Null,则 IsNull 返回 True,即表达式不包含有效数据,否则 IsNull 返回 False。如果 expression 由多个变量组成,则表达式的任何组成变量中的 Null 都会使整个表达式返回 True。
Null 值指出变量不包含有效数据。Null 与 Empty 不同,后者指出变量未经初始化。Null 与零长度字符串 ("") 也不同,零长度字符串往往指的是空串。
重点 使用 IsNull 函数可以判断表达式是否包含 Null 值。在某些情况下想使表达式取值为 True,例如
IfVar=Null 和 IfVar<>Null,但它们通常总是为 False。这是因为任何包含 Null 的表达式本身就为
Null,所以表达式的结果为 False。
下面的示例利用 IsNull 函数决定变量是否包含 Null : Dim MyVar, MyCheck
MyCheck = IsNull(MyVar) ' 返回 False。
MyVar = Null ' 赋为 Null。
MyCheck = IsNull(MyVar) ' 返回 True。
MyVar = Empty ' 赋为 Empty。
MyCheck = IsNull(MyVar) ' 返回 False。
IsNumeric 函数
返回 Boolean 值指明表达式的值是否为数字。
IsNumeric(expression)
expression 参数可以是任意表达式。
说明
如果整个 expression 被识别为数字,IsNumeric 函数返回 True;否则函数返回 False。如果
expression 是日期表达式,IsNumeric 函数返回 False。 下面的示例利用 IsNumeric 函数决定变量是否可以作为数值: Dim MyVar, MyCheck
MyVar = 53 '赋值。
MyCheck = IsNumeric(MyVar) ' 返回 True。 MyVar = "459.95" ' 赋值。
MyCheck = IsNumeric(MyVar) ' 返回True。 MyVar = "45 Help" ' 赋值。
MyCheck = IsNumeric(MyVar) ' 返回 False。
IsObject 函数
返回 Boolean 值指明表达式是否引用了有效的 Automation 对象。
IsObject(expression)
expression 参数可以是任意表达式。
说明
如果 expression 是 Object 子类型变量或用户自定义的对象,则 IsObject 返回 True;否则函数
返回 False。
下面的示例利用 IsObject 函数决定标识符是否代表对象变量: Dim MyInt, MyCheck, MyObject Set MyObject = Me MyCheck = IsObject(MyObject) ' 返回 True。 MyCheck = IsObject(MyInt) ' 返回 False。
Join 函数
返回一个字符串,此字符串由包含在数组中的许多子字符串联接创建。 Join(list[,delimiter])
参数
list
必选项。包含要联接的子字符串一维数组。
Delimiter
可选项。在返回字符串中用于分隔子字符串的字符。如果省略,将使用空字符 ("")。如果 delimiter 是
零长度字符串,则在同一列表中列出全部项,没有分界符。 说明
下面的示例利用 Join 函数联合 MyArray 的子字符串: Dim MyString
Dim MyArray(3)
MyArray(0) = "Mr."
MyArray(1) = "John "
MyArray(2) = "Doe "
MyArray(3) = "III"
MyString = Join(MyArray) 'MyString 包含 "Mr. John Doe III"。
LBound 函数
返回指定数组维的最小可用下标。
LBound(arrayname[, dimension])
参数
arrayname
数组变量名,遵循标准变量命名约定。
Dimension
指明要返回哪一维下界的整数。使用 1 表示第一维,2 表示第二维,以此类推。如果省略 dimension 参
数,默认值为 1。
说明
LBound 函数与 UBound 函数共同使用以确定数组的大小。使用 UBound 函数可以找到数组某一维
的上界。
任一维的下界都是 0。
LCase 函数
返回字符串的小写形式。
LCase(string)
string 参数是任意有效的字符串表达式。如果 string 参数中包含 Null,则返回 Null。
说明
仅大写字母转换成小写字母;所有小写字母和非字母字符保持不变。 下面的示例利用 LCase 函数把大写字母转换为小写字母: Dim MyString
Dim LCaseString
MyString = "VBSCript"
LCaseString = LCase(MyString) ' LCaseString 包含 "vbscript"。
Left 函数
返回指定数目的从字符串的左边算起的字符。
Left(string, length)
参数
string
字符串表达式,其最左边的字符被返回。如果 string 参数中包含 Null,则返回 Null。
Length
数值表达式,指明要返回的字符数目。如果是 0,返回零长度字符串 ("");如果大于或等于 string 参数
中的字符总数,则返回整个字符串。
说明
可使用 Len 函数确定 string 参数中的字符数目。
下面的示例利用Left 函数返回MyString 的左边三个字母: Dim MyString, LeftString
MyString = "VBSCript"
LeftString = Left(MyString, 3) 'LeftString 包含 "VBS"。 注意 LeftB 函数与包含在字符串中字节数据一起使用。length 不是指定返回的字符串数,而是字节数。
Len 函数
返回字符串内字符的数目,或是存储一变量所需的字节数。
Len(string | varname)
参数
string
任意有效的字符串表达式。如果 string 参数包含 Null,则返回 Null。 Varname
任意有效的变量名。如果 varname 参数包含 Null,则返回 Null。 说明
下面的示例利用 Len 函数返回字符串中的字符数目:
Dim MyString
MyString = Len("VBSCRIPT") 'MyString 包含 8。
注意 LenB 函数与包含在字符串中的字节数据一起使用。LenB 不是返回字符串中的字符数,而是返回
用于代表字符串的字节数。
LoadPicture 函数
返回图片对象。
LoadPicture(picturename)
picturename 参数是字符串表达式,该表达式指明了要装入的图片文件的名称。 说明
可以由 LoadPicture 识别的图形格式有位图文件 (.bmp)、图标文件 (.ico)、行程编码文件 (.rle)、图
元文件 (.wmf)、增强型图元文件 (.emf)、GIF (.gif) 文件和 JPEG (.jpg) 文件。
Log 函数
返回数值的自然对数。
Log(number)
number 参数是任意大于 0 的有效数值表达式。
说明
自然对数是以 e 为底的对数。常数 e 的值约为 2.718282。
用 n 的自然对数除 x 的自然对数,可以得到以 n 为底的 x 的对数。如下所示: Logn(x) = Log(x) / Log(n)
以下示例为一个自定义的 Function 过程,该过程计算以 10 为底的对数:
Log10(X) 函数
Log10 = Log(X) / Log(10)
End Function
LTrim、RTrim 和 Trim 函数 返回不带前导空格 (LTrim)、后续空格 (RTrim) 或前导与后续空格 (Trim) 的字符串副本。 LTrim(string)
RTrim(string)
Trim(string)
string 参数是任意有效的字符串表达式。如果 string 参数中包含 Null,则返回 Null。 说明
下面的示例利用 LTrim, RTrim, 和 Trim 函数分别用来除去字符串开始的空格、尾部空格、 开始和尾部空格:
Dim MyVar
MyVar = LTrim(" vbscript ") 'MyVar 包含 "vbscript "。 MyVar = RTrim(" vbscript ") 'MyVar 包含 " vbscript"。 MyVar = Trim(" vbscript ") 'MyVar 包含"vbscript"。
Mid 函数
从字符串中返回指定数目的字符。
Mid(string, start[, length])
参数
string
字符串表达式,从中返回字符。如果 string 包含 Null,则返回 Null。 Start
string 中被提取的字符部分的开始位置。如果 start 超过了 string 中字符的数目,Mid 将返回零长度
字符串 ("")。
Length
要返回的字符数。如果省略或 length 超过文本的字符数(包括 start 处的字符),将返回字符串中从
start 到字符串结束的所有字符。
说明
要判断 string 中字符的数目,可使用 Len 函数。
下面的示例利用 Mid 函数返回字符串中从第四个字符开始的六个字符: Dim MyVar
MyVar = Mid("VB脚本is fun!", 4, 6) 'MyVar 包含 "Script"。 注意 MidB 函数与包含在字符串中的字节数据一起使用。其参数不是指定字符数,而是字节数。
Minute
返回 0 到 59 之间的一个整数(包括 0 和59),代表一小时内的某一分钟。 Minute(time)
time 参数是任意可以代表时间的表达式。如果 time 参数包含 Null,则返回 Null。 说明
下面的示例利用 Minute 函数返回小时的分钟数:
Dim MyVar
MyVar = Minute(Now)
Month 函数
返回 1 到 12 之间的一个整数(包括 1 和 12),代表一年中的某月。 Month(date)
date 参数是任意可以代表日期的表达式。如果 date 参数中包含 Null,则返回 Null。
说明
下面的示例利用 Month 函数返回当前月:
Dim MyVar
MyVar = Month(Now)
' MyVar 包含当前月对应的数字。
MonthName 函数
返回表明指定月份的字符串。
MonthName(month[, abbreviate])
参数
month
必选项。月份的数值定义。例如,一月是 1,二月是 2,以此类推。
Abbreviate
可选项。Boolean 值,表明月份名称是否简写。如果省略,默认值为 False,即不简写月份名称。 说明
下面的示例利用MonthName 函数为日期表达式返回月份的缩写:
Dim MyVar
MyVar = MonthName(10, True) ' MyVar 包含 "Oct"。
MsgBox 函数
在对话框中显示消息,等待用户单击按钮,并返回一个值指示用户单击的按钮。 MsgBox(prompt[, buttons][, title][, helpfile, context])
参数
prompt
作为消息显示在对话框中的字符串表达式。prompt 的最大长度大约是 1024 个字符,这取决于所使用的字符的宽度。如果 prompt 中包含多个行,则可在各行之间用回车符 (Chr(13))、换行符 (Chr(10)) 或回车换行符的组合 (Chr(13) & Chr(10)) 分隔各行。
Buttons
数值表达式,是表示指定显示按钮的数目和类型、使用的图标样式,默认按钮的标识以及消息框样式的数值的总和。有关数值,请参阅“设置”部分。如果省略,则 buttons 的默认值为 0。 Title
显示在对话框标题栏中的字符串表达式。如果省略 title,则将应用程序的名称显示在标题栏中。 Helpfile
字符串表达式,用于标识为对话框提供上下文相关帮助的帮助文件。如果已提供 helpfile,则必须提供
context。在 16 位系统平台上不可用。
Context
数值表达式,用于标识由帮助文件的作者指定给某个帮助主题的上下文编号。如果已提供 context,则必
须提供 helpfile。在 16 位系统平台上不可用。
设置
buttons 参数可以有以下值:
常数 值 描述
只显示确定按钮。 vbOKOnly 0
显示确定和取消按钮。 vbOKCancel 1
显示放弃、重试和忽略按钮。 vbAbortRetryIgnore 2
显示是、否和取消按钮。 vbYesNoCancel 3
显示是和否按钮。 vbYesNo 4
显示重试和取消按钮。 vbRetryCancel 5
显示临界信息图标。 vbCritical 16
显示警告查询图标。 vbQuestion 32
显示警告消息图标。 vbExclamation 48
显示信息消息图标。 vbInformation 64
第一个按钮为默认按钮。 vbDefaultButton1 0
第二个按钮为默认按钮。 vbDefaultButton2 256
第三个按钮为默认按钮。 vbDefaultButton3 512
第四个按钮为默认按钮。 vbDefaultButton4 768
应用程序模式:用户必须响应消息框才能继续在当前应用程序中工vbApplicationModal 0
作。
系统模式:在用户响应消息框前,所有应用程序都被挂起。 vbSystemModal 4096
第一组值 (0 - 5) 用于描述对话框中显示的按钮类型与数目;第二组值 (16, 32, 48, 64) 用于描述图标
的样式;第三组值 (0, 256, 512) 用于确定默认按钮;而第四组值 (0, 4096) 则决定消息框的样式。在
将这些数字相加以生成 buttons 参数值时,只能从每组值中取用一个数字。 返回值
MsgBox 函数有以下返回值:
常数 值 按钮
确定 vbOK 1
取消 vbCancel 2
放弃 vbAbort 3
重试 vbRetry 4
忽略 vbIgnore 5
是 vbYes 6
否 vbNo 7
说明
context,则用户可以按 F1 键以查看与上下文相对应的帮助主题。 如果同时提供了 helpfile 和
如果对话框显示取消按钮,则按 ESC 键与单击取消的效果相同。如果对话框包含帮助按钮,则有为对话
框提供的上下文相关帮助。但是在单击其他按钮之前,不会返回任何值。 当MicroSoft Internet Explorer使用MsgBox函数时,任何对话框的标题总是包含"VBScript",以便于
将其与标准对话框区别开来。
下面的例子演示了 MsgBox 函数的用法:
Dim MyVar
MyVar = MsgBox ("Hello World!", 65, "MsgBox Example")
' MyVar contains either 1 or 2, depending on which button is clicked.
Now
根据计算机系统设定的日期和时间返回当前的日期和时间值。 Now
说明
下面的示例利用 Now 函数返回当前的日期和时间:
Dim MyVar
MyVar = Now ' MyVar 包含当前的日期和时间。
Oct
返回表示数字八进制值的字符串。
Oct(number)
number 参数是任意有效的表达式。
说明
如果 number 参数不是整数,则在进行运算前,将其四舍五入到最接近的整数。
如果 number 是 Oct 返回
Null。 Null
零 (0)。 Empty
任意其他数字 最大可到 11 位的八进制字符。
用户也可以通过直接在数前加上 &O 表示八进制数。例如,&O10 为十进制数 8 的八进制表示法。
下面的示例利用 Oct 函数返回数值的八进制数: Dim MyOct
MyOct = Oct(4) ' 返回 4。
MyOct = Oct(8) ' 返回 10。
MyOct = Oct(459) ' 返回 713。
Replace 函数
返回字符串,其中指定数目的某子字符串被替换为另一个子字符串。 Replace(expression, find, replacewith[, compare[, count[, start]]])
参数
expression
必选项。字符串表达式 包含要替代的子字符串。 Find
必选项。被搜索的子字符串。
Replacewith
必选项。用于替换的子字符串。
Start
可选项。expression 中开始搜索子字符串的位置。如果省略,默认值为 1。在和count 关联时必须用
count
可选项。执行子字符串替换的数目。如果省略,默认值为 -1,表示进行所有可能的替换。在和 start 关
联时必须用。
Compare
可选项。指示在计算子字符串时使用的比较类型的数值。有关数值,请参阅“设置”部分。如果省略,缺省值
为 0 ,这意味着必须进行二进制比较。
设置
compare 参数可以有以下值:
常数 值 描述
执行二进制比较。 vbBinaryCompare 0
执行文本比较。 vbTextCompare 1
返回值
Replace 返回以下值:
如果 Replace 返回 expression 为零长度 零长度字符串 ("")。
expression 为 Null 错误。
find 为零长度 expression 的副本。
replacewith 为零长度 expression 的副本,其中删除了所有由 find 参数指定的内容。
零长度字符串。 start > Len(expression)
count 为 0 expression 的副本。
说明
Replace 函数的返回值是经过替换(从由 start 指定的位置开始到 expression 字符串的结尾)后的字符串,而不是原始字符串从开始至结尾的副本。
下面的示例利用 Replace 函数返回字符串:
Dim MyString
MyString = Replace("XXpXXPXXp", "p", "Y") '二进制比较从字符串左端开始。返回 "XXYXXPXXY"。 MyString = Replace("XXpXXPXXp", "p", "Y", '文本比较从第三个字符开始。返回 "YXXYXXY"。3,, -1, 1)
RGB 函数
返回代表 RGB 颜色值的整数。
RGB(red, green, blue)
参数
red
必选项。0 到 255 间的整数,代表颜色中的红色成分。
green
必选项。0 到 255 间的整数,代表颜色中的绿色成分。
blue
必选项。0 到 255 间的整数,代表颜色中的蓝色成分。
说明
接受颜色说明的应用程序方法和属性,要求该说明以整数代表 RGB 颜色值。RGB 颜色值指定了红色、绿色、蓝色的相对强度,三色组合形成显示的特定颜色。
低字节值表示红色,中字节值表示绿色,高字节值表示蓝色。
对于要求反转字节顺序的应用程序,下面函数在反转字节顺序下提供相同信息: Function RevRGB(red, green, blue)
RevRGB= CLng(blue + (green * 256) + (red * 65536)) End Function
RGB 函数中任一超过 255 的参数都假定为 255。
Right 函数
从字符串右边返回指定数目的字符。
Right(string, length)
参数
string
字符串表达式,其最右边的字符被返回。如果 string 参数中包含 Null,则返回 Null。
Length
数值表达式,指明要返回的字符数目。如果为 0,返回零长度字符串;如果此数大于或等于 string 参数
中的所有字符数目,则返回整个字符串。
说明
要确定 string 参数中的字符数目,使用 Len 函数。 下面的示例利用 Right 函数从字符串右边返回指定数目的字符: Dim AnyString, MyStr
AnyString = "Hello World" '定义字符串。
MyStr = Right(AnyString, 1) '返回 "d"。
MyStr = Right(AnyString, 6) ' 返回 " World"。 MyStr = Right(AnyString, 20) ' 返回 "Hello World"。 注意 RightB 函数用于字符串中的字节数据,length 参数指定返回的是字节数目,而不是字符数目。
Rnd 函数
返回一个随机数。
Rnd[(number)]
number 参数可以是任意有效的数值表达式。
说明
Rnd 函数返回一个小于 1 但大于或等于 0 的值。number 的值决定了 Rnd 生成随机数的方式: 如果 number 为 Rnd 生成
小于零 每次都相同的值,使用 number 作为种子。
大于零 序列中的下一个随机数。
等于零 最近生成的数。
省略 序列中的下一个随机数。
因每一次连续调用 Rnd 函数时都用序列中的前一个数作为下一个数的种子,所以对于任何最初给定的种子都会生成相同的数列。
在调用 Rnd 之前,先使用无参数的 Randomize 语句初始化随机数生成器,该生成器具有基于系统计时器的种子。
要产生指定范围的随机整数,请使用以下公式:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound) 这里, upperbound 是此范围的上界,而 lowerbound 是此范围内的下界。 注意 要重复随机数的序列,请在使用数值参数调用 Randomize 之前,立即用负值参数调用 Rnd。使用同样 number 值的 Randomize 不能重复先前的随机数序列。
Round 函数
返回按指定位数进行四舍五入的数值。
Round(expression[, numdecimalplaces])
参数
Expression
必选项。数值表达式 被四舍五入。
Numdecimalplaces
可选项。数字表明小数点右边有多少位进行四舍五入。如果省略,则 Round 函数返回整数。 说明
下面的示例利用 Round 函数将数值四舍五入到两位小数:
Dim MyVar, pi
pi = 3.14159
MyVar = Round(pi, 2) 'MyVar contains 3.14。
Microsoft(R) Visual Basic(R) Scripting
Edition
返回使用的编写脚本引擎的编译版本号。
ScriptEngineBuildVersion
说明
返回值直接对应于所使用的 Scripting 程序语言的 DLL 文件中包含的版本信息。 下面的示例利用 ScriptEngineBuildVersion 函数返回创建的编写脚本引擎版本号:
Function GetScriptEngineInfo
Dim s
s = "" '用必要的信息形成字符串。
s = ScriptEngine & " Version "
s = s & ScriptEngineMajorVersion & "."
s = s & ScriptEngineMinorVersion & "."
s = s & ScriptEngineBuildVersion
GetScriptEngineInfo = s '返回结果。
End Function
ScriptEngineMajorVersion 函数 返回使用的编写脚本引擎的主版本号。
ScriptEngineMajorVersion
说明
返回值直接对应于所使用的脚本程序语言中 DLL 文件包含的版本信息。 下面的示例利用 ScriptEngineMajorVersion 函数返回编写脚本引擎的版本号:
Function GetScriptEngineInfo
Dim s
s = "" '用必要的信息形成字符串。
s = ScriptEngine & " Version "
s = s & ScriptEngineMajorVersion & "."
s = s & ScriptEngineMinorVersion & "."
s = s & ScriptEngineBuildVersion
GetScriptEngineInfo = s '返回结果。
End Function
ScriptEngineMinorVersion 函数 返回使用的编写引擎引擎的次版本号。
ScriptEngineMinorVersion
说明
返回值直接对应于所使用的脚本程序语言中 DLL 文件包含的版本信息。 下面的示例利用 ScriptEngineMinorVersion 函数返回编写引擎的副版本号: Function GetScriptEngineInfo
Dim s
s = "" '用必要的信息形成字符串。
s = ScriptEngine & " Version "
s = s & ScriptEngineMajorVersion & "."
s = s & ScriptEngineMinorVersion & "."
s = s & ScriptEngineBuildVersion
GetScriptEngineInfo = s '返回结果。
End Function
Second 函数
返回 0 到 59 之间的一个整数(包括 1 和 59),代表一分钟内的某一秒。 Second(time)
time 参数是任意可以代表时间的表达式。如果 time 参数中包含 Null,则返回 Null。 说明
下面的示例利用 Second 函数返回当前秒:
Dim MySec
MySec = Second(Now)
'MySec 包含代表当前秒的数字。
SetLocale 函数
Sets the global locale and returns the previous locale.
SetLocale(lcid)
lcid 参数可以是任意一个合法的 32 位数值或短字符串,该值必须唯一标识一个地理区域。能被识别的值
可以查阅 区域设置 ID 表。
说明
若 lcid 为零,区域被设置为与当前系统设置匹配。
一个 locale 是用户参考信息集合,与用户的语言、国家和文化传统有关。该 locale 决定键盘布局、字母排序顺序和日期、时间、数字与货币格式。
下面举例说明 SetLocale 函数的用法。要使用该代码,请复制标准HTML 文件中
标志之间的所有内容。
Enter Date in UK format:
Here's the US equivalent:
Enter a price in German:
Here's the UK equivalent:
Sgn 函数
返回表示数字符号的整数。
Sgn(number)
number 参数可以是任意有效的数值表达式。
返回值
Sgn 函数有如下返回值:
如果 number 为 Sgn 返回
大于零 1
等于零 0
小于零 -1
说明
number 参数的符号决定 Sgn 函数的返回值。
下面的示例利用 Sgn 函数决定数值的符号:
Dim MyVar1, MyVar2, MyVar3, MySign MyVar1 = 12: MyVar2 = -2.4: MyVar3 = 0 MySign = Sgn(MyVar1) ' 返回 1。
MySign = Sgn(MyVar2) ' 返回 -1。
MySign = Sgn(MyVar3) ' 返回 0。
Sin 函数
返回某个角的正弦值。
Sin(number)
number 参数可以是任何将某个角表示为弧度的有效数值表达式。 说明
Sin 函数取某个角并返回直角三角形两边的比值。此比值是直角三角形中该角的对边长度与斜边长度之
1 之间。 比。结果的范围在 -1 到
将角度乘以 pi/180 即可转换为弧度,将弧度乘以 180/pi 即可转换为角度。 下面例子利用 Sin 返回角度的正弦:
Dim MyAngle, MyCosecant
MyAngle = 1.3 ' 用弧度定义角度。 MyCosecant = 1 / Sin(MyAngle) '计算余割。
Space 函数
返回由指定数目的空格组成的字符串。
Space(number)
number 参数为字符串中用户所需的空格数。
说明
下面的示例利用 Space 函数返回由指定数目空格组成的字符串: Dim MyString
MyString = Space(10) ' 返回具有 10 个空格的字符串。 MyString = "Hello" & Space(10) & "World" ' 在两个字符串之间插入 10 个空格。
Split 函数
返回基于 0 的一维数组,其中包含指定数目的子字符串。
Split(expression[, delimiter[, count[, start]]])
参数
expression
必选项。字符串表达式,包含子字符串和分隔符。如果 expression 为零长度字符串,Split 返回空数
组,即不包含元素和数据的数组。
delimiter
可选项。用于标识子字符串界限的字符。如果省略,使用空格 ("") 作为分隔符。如果 delimiter 为零长
度字符串,则返回包含整个 expression 字符串的单元素数组。
count
可选项。被返回的子字符串数目,-1 指示返回所有子字符串。
Compare
可选项。指示在计算子字符串时使用的比较类型的数值。有关数值,请参阅“设置”部分。
设置
compare 参数可以有以下值:
常数 值 描述
执行二进制比较。 vbBinaryCompare 0
执行文本比较。 vbTextCompare 1
说明
下面的示例利用 Split 函数从字符串中返回数组。函数对分界符进行文本比较,返回所有的子字符串。
Dim MyString, MyArray, Msg MyString = "VBScriptXisXfun!" MyArray = Split(MyString, "x", -1, 1)
' MyArray(0) contains "VBScript". ' MyArray(1) contains "is". ' MyArray(2) contains "fun!". Msg = MyArray(0) & " " & MyArray(1) Msg = Msg & " " & MyArray(2) MsgBox Msg
Sqr 函数
返回数值的平方根。
Sqr(number)
number 参数可以是任意有效的大于或等于零的数值表达式。 说明
下面的示例利用 Sqr 函数计算数值的平方根:
Dim MySqr
MySqr = Sqr(4) ' 返回 2。
MySqr = Sqr(23) ' 返回4.79583152331272。 MySqr = Sqr(0) ' 返回0。
MySqr = Sqr(-4) ' 产生实时错误。
StrComp 函数 返回一个表明字符串比较结果的值。 StrComp(string1, string2[, compare]) 参数
string1
必选项。任意有效的字符串表达式。 string2
必选项。任意有效的字符串表达式。 Compare
可选项。指示在计算字符串时使用的比较类型的数值。如果省略,则执行二进制比较。有关数值,请参阅“设
置”部分。
设置
compare 参数可以有以下值:
常数 值 描述
执行二进制比较。 vbBinaryCompare 0
执行文本比较。 vbTextCompare 1
返回值
StrComp 函数有以下返回值:
如果 StrComp 返回
string1 小于 string2 -1 string1 等于 string2 0 string1 大于 string2 1 string1 或 string2 为 Null Null
说明
下面的示例利用 StrComp 函数返回字符串比较的结果。如果第三个参数为 1 执行文本比较;如果第三
个参数为 0 或者省略执行二进制比较。
Dim MyStr1, MyStr2, MyComp
MyStr1 = "ABCD": MyStr2 = "abcd" '定义变量。 MyComp = StrComp(MyStr1, MyStr2, 1) ' 返回 0。 MyComp = StrComp(MyStr1, MyStr2, 0) ' 返回 -1。 MyComp = StrComp(MyStr2, MyStr1) ' 返回 1。
String 函数
返回具有指定长度的、重复字符组成的字符串。
String(number, character)
参数
number
返回字符串的长度。如果 number 参数包含 Null,则返回 Null。 Character
指定字符或字符串表达式的字符代码,其中字符串表达式的第一个字符用于组成返回的字符串。如果
character 参数包含 Null,则返回 Null。
说明
如果指定的 character 值大于 255,则 String 使用下列公式将该数转换成有效的字符代码:
character Mod 256
下面的示例利用 String 函数返回指定长度的由重复字符组成的字符串: Dim MyString
MyString = String(5, "*") ' 返回"*****"。
MyString = String(5, 42) ' 返回"*****"。
MyString = String(10, "ABC") ' 返回"AAAAAAAAAA"。
StrReverse 函数
返回字符串,此字符串与指定字符串顺序相反。
StrReverse(string1)
string1 参数是要进行字符反向的字符串。如果 string1 是零长度字符串 (""),则返回零长度字符串。
如果 string1 为 Null,则会出现错误。
说明
下面的示例利用 StrReverse 函数返回按相反顺序排列的字符串: Dim MyStr
MyStr = StrReverse("VBScript") 'MyStr 包含 "tpircSBV"。
Tan 函数
返回某个角的正切值。
Tan(number)
number 参数可以是任何将某个角表示为弧度的有效数值表达式。 说明
Tan 取某个角并返回直角三角形两个直角边的比值。此比值是直角三角形中该角的对边长度与邻边长度之
比。
将角度乘以 pi /180 即可转换为弧度,将弧度乘以 180/pi 即可转换为角度。 下面的示例利用 Tan 函数返回角度的正切:
Dim MyAngle, MyCotangent
MyAngle = 1.3 ' 用弧度定义角度。 MyCotangent = 1 / Tan(MyAngle) ' 计算余切。
Time 函数
返回 Date 子类型 Variant,指示当前系统时间。 Time
说明
下面的示例利用 Time 函数返回当前系统时间: Dim MyTime
MyTime = Time ' 返回当前系统时间。
Timer 函数
返回午夜 12 时以后已经过去的秒数。
Timer
说明
下面的例子使用 Timer 函数来确定 For...Next 循环 N 次所需的时间:
Function TimeIt(N)
Dim StartTime, EndTime
StartTime = Timer
For I = 1 To N
Next
EndTime = Timer
TimeIt = EndTime - StartTime
End Function
TimeSerial 函数
返回一个 Date 子类型的 Variant,含有指定时、分、秒的时间。
TimeSerial(hour,minute, second)
参数
hour
其值为从 0 (12:00 A.M.) 到 23 (11:00 P.M.) 的数值或数值表达式。
minute
任意数值表达式。
second
任意数值表达式。
说明
要指定一时刻,如 11:59:59,TimeSerial 的参数取值应在可接受的范围内;也就是说,小时应介于 0-23 之间,分和秒应介于 0-59 之间。但是,可以使用数值表达式为每个参数指定相对时间,这一表达式代表某时刻之前或之后的时、分或秒数。
下面的示例使用绝对时间数的表达式。TimeSerial 函数返回中午前 6(12-6)小时前的 15分钟 (-15), 或 5:45:00 A.M.
Dim MyTime1
MyTime1 = TimeSerial(12 - 6, -15, 0) ' 返回 5:45:00 AM.
当任何一个参数的取值超出可接受的范围时,它会正确地进位到下一个较大的时间单位中。例如,如果指定了 75 分钟,则这个时间被解释成一小时十五分钟。但是,如果任何一个参数值超出 -32768 到 32767 的范围,就会导致错误。如果使用三个参数直接指定的时间或通过表达式计算出的时间超出可接受的日期范围,也会导致错误。
TimeValue
返回包含时间的 Date 子类型的 Variant。
TimeValue(time)
time 参数通常是代表从 0:00:00 (12:00:00 A.M.) 到 23:59:59 (11:59:59 P.M.) 的字符串表达式(包括 0:00:00 和 23:59:59)。不过,time 也可以是代表该范围内任何时间的表达式。如果 time 参数包含 Null,则返回 Null。
说明
可以采用 12 或 24 小时时钟格式输入时间。例如 "2:24PM" 和 "14:24" 都是有效的 time 参数。如果 time 参数包含日期信息, TimeValue 函数并不返回日期信息。然而,如果 time 参数包含无效的日期信息,则会出现错误。
下面的示例利用 TimeValue 函数将字符串转化为时间。也可以用 日期文字 直接赋时间给 Variant 类型的变量(例如, MyTime = #4:35:17 PM#).
Dim MyTime
MyTime = TimeValue("4:35:17 PM") ' MyTime 包含 "4:35:17 PM"。
TypeName 函数
返回一个字符串,提供有关变量的 Variant 子类型信息。
TypeName(varname)
必选项的 varname 参数,可以是任何变量。
返回值
TypeName 函数返回值如下:
值 描述
字节值 Byte
整型值 Integer
长整型值 Long
单精度浮点值 Single
双精度浮点值 Double
货币值 Currency
十进制值 Decimal
日期或时间值 Date
字符串值 String
Boolean 值;True 或 False Boolean
未初始化 Empty
无有效数据 Null
实际对象类型名