VBScript函数参考
Abs函数
语法
Abs(number)
返回一数值的绝对值。
参数 number 可以是任何数值表达式。如果 number 的值为 Null,则返回 Null;如果其参数是没有初始值的变数,则返回 0。
注解:
一个数值的绝对值就是将正负号去掉以后的值。例如 Abs(-1) 和 Abs(1) 的返回值都是 1。
Array 函数
语法
Array(arglist)
该函数返回一个包含了一个数组的 Variant。
参数 arglist 是必要的,是以逗号隔开的值。这些值是被指定为 Variant 中数组的元素。如果没有指定参数,则会建立零长度的阵列。
注解:
当要引用数组元素时,使用的表示法为变数名称后加上以括号括起来的索参数字。在下列范例中,第一个陈述式建立一个名为 A 的 Variant 变数。第二个陈述式指定一个数组给变数 A。最后一个陈述式将阵列中第二个元素的值指定给另一个变数。
Dim A
A = Array(10,20,20)
B = A(2)
附注:
不是定义数组的变数仍然可以含有数组元素。在观念上,含有数组的 Variant 变数和含有 Variant 元素的数组变数是不同的。但是在数组元素的存取方法上,并没有什么不同。
Asc 函数
语法
Asc(string)
该函数返回字符串中第一个字母的 ANSI 码 。
参数 string 是任何可用的字符串表达式。若是 string 中没有包含任何字元,则会产生执行阶段错误。
注解:
AscB 函数是用来处理包含二进制的字符串, AscB 函数会返回第一个位元素,而非第一个字元的字元码。 AscW 函数则是为了使用 Unicode 字元码的 32 位元作业平台而设计的。此函数会返回 Unicode 字元码,而避免将 ANSI 码转换为 Unicode 码处理。
Atn 函数
语法
Atn(number)
该函数返回参数的「反正切」(arctangent) 值。
参数 number 可以是任何有效的数值表达式。
注解:
Atn 函数的参数 (number) 是直角三角形中构成直角两边的比值(正切函数值),其返回值则为相对应之底角的度数,以「弧度」为单位。正切函数值 (number) 的算法为「对边除以邻边」。
返回值的范围落在 pi/2 到 pi/2 的「弧度」之间。
「角度」与「弧度」的转换方法为:将「角度」乘以 pi/180 即为「弧度」。反过来将「弧度」乘以 180/pi 便得「角度」。
CBool 函数
语法
CBool(expression)
该函数将参数expression转换为 Boolean型 。
参数可以是任何有效的表达式。
注解:
如果 expression 的结果为 0 ,则返回 False;否则将返回 True。如果 expression 无法被计算成数值,将会产生执行阶段错误。
CByte 函数
语法
CByte(expression)
该函数返回一个转换为 Byte 型的表达式。
参数 expression 可以是任何有效的表达式。
注解
使用 CByte 来强制执行 Byte 运算,不管它是单精数、倍精数、或是整数,都可以正常执行。
使用 CByte 函数可以在任何语言的版本中,让任何一种数据转换至 Byte型。例如,不同的小数点分隔符号,会依据您系统的国别设定来做适当的确认。而千分位分隔符号也一样。
若 expression 超出 Byte 资料型态允许的范围,则将会显示错误。
CCur 函数
语法
CCur(expression)
该函数返回一个转换为 Currency 的表达式。
参数 expression 可以是任何有效的表达式。
注解:
可以使用 CCur 来强制执行 Currency 运算,以免被当作整数运算。
可以使用 CCur 函数以在任何语言的版本中,让任何一种数据换至 Currency 型。例如,当使用 CCur,不同的小数点分隔符号、千分位分隔符号,和不同的货币选项,会依据您系统的国别设定来做适当的确认。
CDate 函数
语法
CDate(date)
返回一个转换为 Date 型的表达式。
参数 date 是任何有效的日期表达式。
注解:
可以使用 IsDate 函数来检查 date 是否可以被转换成日期或时间。而 CDate 接受日期文字和时间文字以及日期/时间有效范围内的适当数值。当转换一个数字成为日期时,是将整数部分转换成日期;任何数字中的小数部分,将转换为从午夜起算的时间。
CDate 是依据您系统上的国别设定来决定日期的格式。若提供的格式为不可辨识的日期设定,则无法判断日、月、年的顺序。另外,它若包含有星期的字符串,对于这样的完整日期格式也无法辨识。
CDbl 函数
语法
CDbl(expression)
返回一个转换为 Double 态的表达式。
参数 expression 可以是任何有效的表达式。
注解:
可以使用 CDbl 或 CSng 来强制执行双精度或单精度运算以防止被当作货币或整数运算。
Chr 函数
语法
Chr(charcode)
该函数返回指定参数字所代表的字元。
参数 charcode 是一个数值,它是用来识别某个字符。
注解:
0 到 31 之间的数字与一般、非列印的 ASCII 码相同。例如,Chr(10) 会返回换行(linefeed)字元。
CInt 函数
语法
CInt(expression)
返回一个转换为 Integer 型的表达式。
参数 expression 可以是任何有效的表达式。
注解:
可以使用 CInt 或 CLng 函数来强制执行整数运算,以免被当作货整币、单精度、或双精度运算。
如果 expression 超出 Integer 型允许的范围,则会发生错误。
附注:
CInt 函数与 Fix 及 Int 函数不同,Fix 和 Int 函数会将小数部分去除,然后返回整数值。当小数部分恰好为 0.5 时, CInt 函数会将它转换成最接近的偶数值。例如,0.5 转换成 0,而 1.5 转换成 2。
CLng 函数
语法
CLng(expression)
该函数返回一个转换为 Long 型的表达式。
参数 expression 可以是任何有效的表达式。
注解:
可以使用 CInt 或 CLng 来强制执行整数运算,以免被当作货整币、单精度、或双精度运算。
如果 expression 超出 Long型允许的范围,则会发生错误。
附注:
CLng 函数与 Fix 及 Int 函数不同,Fix 和 Int 函数会将小数部分去除,然后返回整数值。当小数部分恰好为 0.5 时, CLng 函数会将它转换成最接近的偶数值。例如,0.5 转换成 0,1.5 转换成 2。
Cos 函数
语法
Cos(number)
该函数返回一角度的 cosine (余弦函数)值。
参数 number 可以是任何有效的数值表达式,其值代表一个角度,以「弧度」为单位。
注解:
Cos 函数的参数表示角度,返回值为该角度两邻边的比值。其比值的定义为「连接另一锐角的邻边除以连接直角的邻边」。
返回值的范围在 -1 到 1 之间。
CreateObject 函数
语法
CreateObject(class)
该函数建立并返回一个 Automation 物件的引用项目。
参数 class 使用 servername.typename 语法,并且具有下列几个部分:
servername 提供该物件之应用程式的名称。
typename 所要建立物件的型态或物件类别。
注解:
若要建立 Automation 物件,请将 CreateObject 所返回的物件指定给物件变数:
Dim ExcelSheet
Set ExcelSheet = CreateObject("Excel.Sheet")
以上这个例子,在应用程序一开始就建立 Microsoft Excel 表。只要对象被建立了,当在程序里要引用物件的时候,就可以使用自定义的对象变量。在接下来的范例中,使用物件变数来运用新物件的属性和方法:ExcelSheet,和其它 Microsoft Excel 物件,包括 Application 物件和 Cells 集合物件。例如:
通过 Application 对象来显现 Excel。
ExcelSheet.Application.Visible = True
写几个字到第一格内。
ExcelSheet.Cells(1,1).Value = "This is column A, row 1"
将这个 sheet 存档。
ExcelSheet.SaveAs "C:\DOCS\TEST.XLS"
使用 Application 物件的 Quit 方法来关闭 Excel。
ExcelSheet.Application.Quit
释放对象变量
Set ExcelSheet = Nothing
CSng 函数
语法
CSng(expression)
该返回一个转换为 Single 资料型态的表达式。
参数 expression 可以是任何有效的表达式。
注解:
使用 CDbl 或 CSng 来强制执行双精度或单精度运算,以防止被当作货币或整数运算。
如果 expression 超出 Single 型允许的范围,则会发生错误。
CStr 函数
语法
CStr(expression)
返回一个转换为 String 资料型态的表达式。
参数 expression 可以是任何有效的表达式。
注解:
可以使用 CStr 来强制将执行结果以 String 型表示。
参数 expression 将决定函数返回值为何,请参考下表:
若 expression 内容为 返回值
Boolean 包含 "True" 或 "False" 的字符串。
Date 包含一个日期的字符串,其格式为你的系统的简短日期格式。
Null 产生执行时期错误。
Empty是 一个长度为 0 的 字符串 ("")。
Error 包含一个英文字 "Error" 以及一个错误代码的字符串。
其它数值包含这个数值的字符串。
DateAdd 函数
语法
DateAdd(interval, number, date)
返回内容为某个基准日期加上或减去数个时间间隔单位后的日期。
DateAdd 函数语法中有下列几部份:
interval为必须项。字符串表达式,表示所要加上去之时间间隔单位。其值请参考设定部份。
Number为必须项。数值表达式,表示要加上之时间间隔单位的次数。其数值可以为正数(可得未来日期),亦可以为负数(可得过去的日期)。
Date为必须项。可为型态为 Variant (Date) 之变数或正确表示出日期之字符串,代表基准日期,将此基准日期加上 number 次的 interval 后,即为返回值日期。
参数 interval 的设定值如下:
yyyy表示年
q表示季
m表示月
y表示一年的日数
d表示日
w表示一周的日数
ww表示周
h表示时
n表示分
s表示秒
注解:
可以使用 DateAdd 函数计算基准日期加上或减去您所指定的时间间隔后的结果。例如,可以用 DateAdd 来计算从今天起三十天后或三十天前的日期是那一天;或者计算距离现在 45 分钟前或 45 分钟后的时间。如果时间间隔是以 [天] 来计算,interval 参数可以是 [一年的日数] ("y"),[日] ("d"),或 [一周的日数] ("w")。
DateAdd 函数所返回的日期一定是有效且正确的。下面的范例以一月三十一日为基准日,计算加上一个月后的结果。
NewDate = DateAdd("m", 1, "31-Jan-95")
DateAdd 返回 28-Feb-95,而不是 31-Feb-95。如果基准日 date 是 31-Jan-96,返回值则是 29-Feb-96,因为 DateAdd 函数知道 1996 年是闰年。
如果计算出来的年度超过 100,就会产生程式错误。
如果 number 参数不是一个 Long 值,计算时会取最接近的整数值来计算。
DateDiff 函数
语法
DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear]])
返回两个日期间相差的时间间隔单位数目。
DateDiff 函数语法中有下列几部份:
interval 为必须项。字符串表达式,表示用来计算 date1 及 date2 之时间差的时间间隔单位。
date1, date2 为必须项。日期表达式,为要用来计算的两个日期。
firstdayofweek 选择项。常数,表示一星期的第一天。如果省略此参数,则以星期日为第一天。
firstweekofyear 选择项。常数,表示一年的第一周。如果省略此参数,则以包含一月一日的星期为第一周。
参数 interval 的设定值如下:
yyyy表示 年
q表示季
m表示月
y表示一年的日数
d表示日
w表示一周的日数
ww表示周
h表示时
m表示分
s表示秒
参数 firstdayofweek 的设定值如下:
常数 值 说明
vbUseSystem 0 使用NLS API 设定
续 表
常数 值 说明
vbSunday 1 星期日(默认值)
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六
参数 firstweekofyear 的设定值如下:
常数 值 说明
vbUseSystem 0 使用NLS API设定。
vbFirstJan1 1 包含一月一日的星期(默认值)。
vbFirstFourDays 2 第一个至少包含此年度四天的星期。
vbFirstFullWeek 3 第一个完整的星期。
注解:
可以使用 DateDiff 函数来决定两个日期之间的时间间隔单位数目。例如,使用 DateDiff 来计算某两个日期之间相隔几日,或计算从今天起到年底还有多少个星期。
如果想知道 date1 与 date2 相差的 [日] 数,interval 可以是 [一年的日数] ("y") 或 [日] ("d")。如果 interval 是 [一周的日数] ("w"),DateDiff 会返回两日期间相差的周数。如果 date1 是星期一,DateDiff 会计算到 date2 为止之星期一的个数,包含 date2 但不包含 date1。不过,如果 interval 是 [周] ("ww"),DateDiff 函数会藉由计算 date1 与 date2 之间星期天的个数,会返回两日期间的 [日历周] 数。如果 date2 刚好是星期天,则 date2 也会被加进计数结果中;但不论 date1 是否为星期天,它都不会被算进去。
如果 date1 比 date2 来得晚,DateDiff 函数返回值为负数。
如果 interval 参数为 [w] 或 [ww],firstdayofweek 参数会影响其计算结果。
如果 date1 或 date2 以短式日期的格式传入日期参数,参数内所有年份若有给定,则该日期便是固定的。但是,若 date1 或 date2 以双引号括起来,且年份并未给定,则现在的年份便会自动加入 date1 或 date2 参数中。如此书写便可适用于不同年份而无须更改代码。
但若计算十二月三十一日和来年的一月一日的年份差,DateDiff 会返回 1 表示相差一个年份,虽然实际上只相差一天而已。
DatePart 函数
语法
DatePart(interval, date[, firstdayofweek[, firstweekofyear]])
返回指定日期的某个时间部份。
DatePart 函数语法有下列几部份:
interval为必须项。字符串表达式,指定的时间间隔单位。请参阅设定部份。
date 必须项。日期表达式,所要指定的日期。
firstdayofweek为选择项。常数,表示一星期的第一天。如果省略此参数,则以星期日为第一天。请参阅设定部份。
firstweekofyear 选择项。常数,表示一年的第一周。如果省略此参数,则以包含一月一日的星期为第一周。
参数 interval 的设定值同前面的datadiff.
注解:
使用 DatePart 函数来得知某个日期的特定时间单位。例如,您可以使用 DatePart 来得知某个日期资料是星期几,或是几点钟。
如果 interval 参数为 [w] 或 [ww],firstdayofweek 参数会影响其计算结果。
如果 date 以短式日期的格式传入日期参数,参数内的年份若给定,则该日期便是固定的。但是,若 date 以双引号括起来,且年份并未给定,则现在的年份便会自动加入 date 参数中。这样便可适用于不同年份而无须更改程序代码。
DateSerial 函数
语法
DateSerial(year, month, day)
该函数返回一 Variant (Date),内容为指定的年、月、日之日期表示式。
DateSerial 函数语法有下列的参数:
year为必须项;Integer。从 100 到 9999 间的整数,或一数值表达式。
Month为任何数值表达式。
day任何数值表达式。
注解:
要表示某个日期,如 1991 年 12 月 31 日,DateSerial 函数中的每个参数值必须落在合理的范围内;即,1-31 为合理之 [日],而 1-12 为合理之 [月]。不过,您也可以计算和某个基准日相差某年某月某日的日期。此时所传入的参数可以是任何数值表达式,表示相差的年、月、或日数。
DateValue 函数
语法
DateValue(date)
返回一 Variant ( Date) 型的日期表示式。
注解:
如果 date 中包含时间,DateValue 会把时间部份舍去。但若 date 只含时间而无日期(如 "89:98"),会产生程式错误。
如果 date 是个字符串,且日期内容只有数字及日期分隔符号,DateValue 会依照系统所选定的短式日期格式来决定月、日、年在字符串中的顺序。DateValue 也接受以正确无误的英文月份名称代替月份数字所表示的日期,全名或缩写均可。例如,除了可用 12/30/1991 和 12/30/91 外,DateValue 也接受 December 30, 1991 和 Dec 30, 1991 来表示同一日期。
如果 date 中的年份省略,DateValue 会使用目前系统时间里的年份。
Day 函数
语法
Day(date)
该函数返回一值,从 1到 31,表示一个月中的某一日。
date 可以是任何表达式,只要能够表示一个合理的日期即可。如果 date 是 Null,则返回 Null。
Exp 函数
语法
Exp(number)
该函数返回 e (自然对数之底数)的某次方。
参数 number 可以是任何的数值表达式。
注解:
如果 number 的值超过 709.782712893,会产生程式错误。常数 e 的值大约是 2.718282。
Filter 函数
语法
Filter(InputStrings, Value[, Include[, Compare]])
返回一个以零为基数的数组,其内容为符合筛选条件的字符串串子集合。
Filter 函数的语法是由下列部分所组成:
InputStrings为必须项。为被搜寻的一维字符串。
Value 为必须项。为所要寻找的字符串。
Include为 选择项。以boolen值表示是否返回包含或不包含 Value 的子字符串。若 Include 值为 True,Filter 所返回的字符串子集合,将包含 Value 所指定的子字符串。若 Include 为 False,Filter 所返回的字符串子集合,并不包含 Value 所指定的子字符串。
Compare 为选择项。以数值指定字符串比对方式.
在 Compare 参数中,允许使用下列值:
常数 值 说明
vbBinaryCompare 0 进行二进制比较。
vbTextCompare 1 进行纯文字比较。
vbDatabaseCompare 2 进行数据比较。
注解:
如果没有任何 Value 在 InputStrings 中比对成功,Filter 将返回一个空串。若 InputStrings 为 Null 或不是一维阵列,则发生错误。
由 Filter 函数所返回的值,只包含了足够放置比较正确项目的成员。
Int、Fix 函数
语法
Int(number)
Fix(number)
该函数返回参数的整数部份。
参数 number 可以是任何的数值表达式。如果 number 的值为 Null,则返回 Null。
注解:
Int 与 Fix 都会去掉 number 的小数部份而返回剩下的整数。
两个函数的不同之处在于,当 number 为负数时,Int 会返回小于或等于 number 的第一个负整数,而 Fix 则会返回大于或等于 number 的第一个负整数。例如,Int 将 -8.4 转成 -9,而 Fix 则将 -8.4 转成 -8。
FormatCurrency 函数
语法
FormatCurrency(Expression[,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers [,GroupDigits]]]])
返回一个以系统控制台中所设定的货币符号格式化的货币值表达式。
FormatCurrency 函数的语法是由下列部分所组成.
Expression 为必须项。欲被格式化的表达式。
NumDigitsAfterDecimal 为选择项。此数值表示有多少小数位数。默认值为 -1,表示使用系统地区设定值。
IncludeLeadingDigit 为选择项。以 Tristate 常数表示小数点前是否「显示前导零」。参阅「设定值」部分。
UseParensForNegativeNumbers 为选择项。以 Tristate 常数表示负数值是否带有括号。请参阅「设定值」部分。
GroupDigits 为选择项。以 Tristate 常数表示数字是否以「数位群组符号」来分隔,其视系统地区设定而有不同。请参阅「设定值」部分。
IncludeLeadingDigit,UseParensForNegativeNumbers 和 GroupDigits 参数有下列的设定值:
常数 值 说明
TristateTrue -1 True
TristateFalse 0 False
TristateUseDefault -2 使用系统地区设定值。
注解:
当某一或多个选项参数被省略了,那么将会使用系统地区设定值。
货币符号的位置是由系统地区设定值决定。
FormatDateTime 函数
语法
FormatDateTime(Date[,NamedFormat])
该函数返回日期或时间格式的表达式。
FormatDateTime 函数的语法是由下列部分所组成:
Date 为必须项。为欲格式化的日期表达式。
NamedFormat 为必须项。以数值表示所使用的日期/时间格式。若省略此参数,则使用 vbGeneralDate 。
NamedFormat 参数有下列的设定值:
常数 值 说明
vbGeneralDate 0 显示日期和(或)时间。将以简短日期格式显示日期,以完整时间显示时间。可以两者皆显示。
vbLongDate 1 以系统完整日期格式设定值显示日期。
vbShortDate 2 以系统的简短日期格式设定值显示日期。
vbLongTime 3 以系统的时间格式设定值显示时间。
vbShortTime 4 以24小时制格式(hh:mm)显示时间。
FormatNumber 函数
语法
FormatNumber(Expression[,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers [,GroupDigits]]]])
该函数返回一格式化的数字。
FormatNumber 函数的语法是由下列部分所组成:
Expression 必要项。欲被格式化的表达式。
NumDigitsAfterDecimal 为选择项。此数值表示有多少小数位数。默认值为 -1,表示使用系统的设定值。
IncludeLeadingDigit 为选择项。以 Tristate 常数表示小数点前是否"显示前导零"。
UseParensForNegativeNumbers 为选择项。以 Tristate 常数表示负数值是否带有括号。
GroupDigits 为选择项。以 Tristate 常数表示数字是否以"数位群组符号"来分隔.
IncludeLeadingDigit,UseParensForNegativeNumbers 及 GroupDigits 参数如下设定值:
常数 值 说明
TristateTrue -1 True
TristateFalse 0 False
TristateUseDefault -2 使用系统地区设定值。
注解:
若省略了某一或多个选项参数,那么将会使用系统默认值。
FormatPercent 函数
语法
FormatPercent(Expression[,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers [,GroupDigits]]]])
该函数返回带有%符号的格式化百分比表达式(以 100 为基底)。
FormatPercent 函数的语法是由下列部分所组成:
Expression 必须项。为欲被格式化的表达式。
NumDigitsAfterDecimal 为选择项。此数值表示有多少小数位数。默认值为 -1,表示使用系统设定值。
IncludeLeadingDigit 为选择项。以 Tristate 常数表示小数点前是否"显示前导零"。
UseParensForNegativeNumbers 为选择项。以 Tristate 常数表示负数值是否带有括号。
GroupDigits 为选择项。以 Tristate 常数表示数字是否以"数位群组符号"来分隔。
IncludeLeadingDigit,UseParensForNegativeNumbers 及 GroupDigits 参数有下列的设定值:
常数 值 说明
TristateTrue -1 True
TristateFalse 0 False
TristateUseDefault -2 使用系统地区设定值。
注解:
若省略了某一或多个选项参数,那么将会使用系统默认的设定值。
Hex 函数
语法
Hex(number)
该函数将数字以十六进位表示,用 String 返回。
参数 number 可以是任何的表达式。
注解:
如果 number 不是一个整数,那么在执行前会先被四舍五入成最接近的整数。
可以将十六进位数字直接以&H开头来表示。例如,&H10代表十进位的 16。
Hour 函数
语法
Hour(time)
该函数返回一个在 0 及 23 之间的值,表示一天之中的某个 [时]。
参数 time 可以是任何表示合理时间的表达式。如果 time 是 Null,则返回 Null。
InputBox 函数
语法
InputBox(prompt[, title][, default][, xpos][, ypos][, helpfile, context])
该函数显示一对话框让使用者输入文字,按下确定按钮,则返回输入的内容内容。
InputBox 函数语法有下列的参数:
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,对话框中会自动加上一个 Help 按钮。
如果使用者按了一下 「确定」 或是按了 ENTER,则 InputBox 函数会返回文字方块中的内容;如果使用者按了一下 「取消」,则此函数会返回一个长度为零的字符串("")。
InStr 函数
语法
InStr([start, ]string1, string2[, compare])
该返回在某字符串中一字符串的最先出现位置。
InStr 函数语法有下列的参数:
start 为选择项。为一数值表达式,用来设定每次搜寻的起点。如果省略,将从第一个字元开始。如果 start 所含为 Null,将发生错误。如果有加 compare 参数,则一定要有 start 参数。
string1为必须项。欲进行搜寻的字符串。
string2 为必须项。欲搜寻的字符串。
compare 为选择项。设定字符串比较种类。如果省略 compare,将进行二进制比较。
参数 compare 的设定值如下:
常数 值 说明
vbBinaryCompare 0 进行二进制比较。
vbTextCompare 1 进行字符比较。
vbDatabaseCompare 2 执行数据内容比较。
Instr 函数的返回值如下:
寻找条件 返回值
string1长度为零 0
string1为Null Null
string2长度为零 start
string2为Null Null
string2找不到 0
在string1中找到string2 找到的位置
start>Len(string2) 0
InstrRev 函数
语法
InstrRev(string1, string2[, start[, compare]])
返回在某字符串中一字符串的最先出现位置,从尾端开始搜寻。
InstrRev 函数语法有下列几部份:
string1为必须项。欲进行搜寻的字符串表达式。
string2为必须项。欲搜寻的字符串表达式。
Start为选择项。为一数值表达式,用来设定每次搜寻的起点。如果省略,则为 -1,代表将从最后一个字符开始。如果 start 所含为 Null,将发生错误。
compare 选择项。设定字符串比较类型。如果省略 compare,将进行二进制比较。
参数 compare 的设定值如下:
常数 值 说明
vbBinaryCompare 0 进行二进位资料比对。
vbTextCompare 1 进行文字资料比对。
vbDatabaseCompare 2 执行根据资料库所含资料的比对。
InStrRev 函数的返回值如下:
比较条件 返回值
string1长度为零 0
string1为Null Null
string2长度为零 start
string2为Null Null
string2找不到 0
在string1中找到string2 找到的位置
start>Len(string2) 0
注解:
注意 InstrRev 函数的语法与 Instr 函数的语法并不相同。
IsDate 函数
语法
IsDate(expression)
该函数返回 Boolean 值,用来指出表达式是否可以转换成日期。
参数 expression 可以是任何日期表达式,或是可以被辨别为日期或时间的字符串表达式。
注解:
如果表达式是一个日期或是可以被转换成有效日期,IsDate 会返回 True;否则它会返回 False。
IsEmpty 函数
语法
IsEmpty(expression)
返回 Boolean 值,用来指出变数是否已经初始化。
参数 expression 可以是任何表达式。然而,因为 IsEmpty 是用来决定个别变数是否已初始化,所以参数 expression 通常是单一变数名称。
注解:
如果变数未初始化,或已明确设定为 Empty,则 IsEmpty 会返回 True;否则,则返回 False。如果 expression 含有一个以上的变数,则一定返回 False。
IsNull 函数
语法
IsNull(expression)
返回 Boolean 值,用来指出表达式是否未含任何有效的资料 (Null)。
参数 expression 可以是任何表达式。
注解:
如果 expression 为 Null,则 IsNull 返回 True;否则 IsNull 会返回 False。如果 expression 中存在不只一个变数,若其中任一变数为 Null,则会使得整个表达式返回 True。
Null 值的作用是用来指出 Variant 不包含有效的资料。 Null 和 Empty 的不同点在于,后者指出的是尚未初始化的变数,这和长度为零的字符串("")不同,因为长度为零的字符串指的是空字符串。
使用 IsNull 函数是来决定表达式是否包含 Null 值。在某些情况下您希望其值为 True 的表达式,就像 If Var = Null 和 If Var <> Null,其值永远为 False。这是因为任何包含 Null 的表达式其值为 Null,也就因此为 False。
IsNumeric 函数
语法
IsNumeric(expression)
返回 Boolean 值,用来指出表达式的运算结果是否为数字。
参数 expression 可以是任何表达式。
注解:
如果整个 expression 的运算结果为数字,则 IsNumeric 会返回 True;否则,它会返回 False。
如果 expression 是个日期表达式,则 IsNumeric 会返回 False。
IsObject 函数
语法
IsObject(expression)
返回 Boolean 值,用来指出识别项是否代表一个对象。
参数 expression 可以是任何表达式。
注解:
如果 expression 是对象 (Object ) 型态,或是使用者自订的物件,IsObject 都会返回 True;否则它会返回 False。
Join 函数
语法
Join(list[, delimiter])
返回一字符串,结果是由数组中一些子字符串的连结。
Join 函数的语法是由下列部分所组成:
list 为必须项。包含欲连结之子字符串的一维数组。
Delimiter为选择项。使用于返回字符串中分隔子字符串的字符。若省略,则使用空白字元(" ")。若 delimiter 为空字符串,所有的连结将无分隔字符。
LBound 函数
语法
LBound(arrayname[, dimension])
返回指定数组某维最小可使用的数组索引。.
LBound 函数语法有下列几部份:
Arrayname数组变量的名称,遵循标准变量命名规格。
dimension 表示返回的是某一维的下限。1 表示第一维,2 表示第二维,依此类推。如果省略 dimension,其默认值为 1。
注解:
同时使用 LBound 函数和 UBound 函数来决定数组的大小。使用 UBound 函数来找出数组每一维的上限。
任何维数预设的下限永远是 0。
LCase 函数
语法
LCase(string)
返回一转换成小写的 String。
参数 string 可以是任何字符串表达式。如果 string 所含为 Null,将返回 Null。
注解:
只有大写的字母会转成小写;所有小写字母和非字母字符保持不变。
Left 函数
语法
Left(string, length)
返回一字符串由左算起特定数量的字符。
Left 函数语法有下列的参数:
String参数,为函数欲执行的字符串表达式。如果 string 所含为 Null,将返回 Null。
length 数值表达式,指出欲返回左方多少个字符。如果为 0,返回零长度 ("")。如果大于或等于 string 的字符数,则返回整个字符串。
注解:
要知道 string 的字符数,请用 Len 函数。
附注:
LeftB 函数是使用在位元组字符串上。所以此时 length 代表的是位元组数,而非字符数。
Len 函数
语法
Len(string | varname)
返回字符串内字符的数目,或是返回储存一变数所需的位数。
Len 函数语法有下列几部份:
string 为任何正确的字符串表达式。如果 string 所含为 Null,则返回 Null。
varname 为任何正确的变数名称。如果 varname 所含为 Null,则返回 Null。
LoadPicture 函数
语法
LoadPicture(picturename)
该函数返回一图形对象。
picturename 参数是一个字符串表达式,为欲载入的图形文件名。
注解:
图形格式由 LoadPicture 管理,包括了点阵图档 (.bmp)、图示档 (.ico)、RLE(Run-Length Encoded)档 (.rle)、中继档 (.wmf)、加强式中继档 (.emf)、GIF 档 (.gif) 以及 JPEG 档 (.jpg)。
Log 函数
语法
返回参数的自然对数值。
Log(number)
参数 number可以是任何的数值表达式,条件是参数值必须大于 0。
注解:
自然对数是以 e 为底数的对数。常数 e 的值大约是 2.718282。
如果要以任意底数 n 来计算数值 x 的对数值,可以利用下列式子:将 x 的自然对数值除以 n 的自然对数值。
Logn(x) = Log(x) / Log(n)
下面的范例说明如何写一个函数来求出以 10 为底的对数值:
Function Log10(X)
Log10 = Log(X) / Log(10)
End Function
LTrim、RTrim,与 Trim 函数
语法
LTrim(string)
RTrim(string)
Trim(string)
将给定字符串的前头空白 (LTrim)、后面空白 (RTrim)、或前后空白 (Trim) 删除后返回。
参数 string 可以是任何字符串表达式。如果 string 所含为 Null,则返回 Null。
Mid 函数
语法
Mid(string, start[, length])
从一字符串返回特定数量字符。
Mid 函数语法有下列的参数:
string 字符串表达式。如果 string 所含为 Null,则返回 Null。
start 欲返回字符串在 string 之开头位置。如果 start 超过 string 的范围, Mid 则返回零长度字符串 ("")。
length 即返回的字符数。如果省略或 length 超过可以返回的字符数,(包括 start 处的字元),那将返回从 start 到尾端的所有字符数。
注解:
string 的字符数,可用 Len 函数。
Minute 函数
语法
Minute(time)
返回一值,从 0 到 59,表示一小时中的某分钟。
参数 time 可以是任何可以表示出合理时间的表达式。如果 time 的值为 Null,则返回 Null。
Month 函数
返回一值,从 1 到 12,表示一年中的某月。
语法
Month(date)
参数 date 可以是任何能够表示一个合理日期的表达式。如果 date 的值为 Null, ,则返回 Null。
MonthName 函数
语法
MonthName(month[, abbreviate])
返回包含指定月份的字符串。
MonthName 函数的语法包含以下的组成部分:
month 为必须项。代表月份的数值。例如,一月是 1、二月是 2,等等。
abbreviate 选择项。为一boolean值,它可指定月份名称是否为缩写。若省略,则默认值为 False,即表示月份名称不为缩写。
MsgBox 函数
语法
MsgBox(prompt[, buttons][, title][, helpfile, context])
将讯息显示在对话框中,等使用者按下按钮,并返回一值来表示使用者按下的是哪一个钮。
MsgBox 函数语法有下列的参数:
prompt 字符串表达式,用以做为显示在对话框中的讯息。prompt 的最大长度大约是1024个字元,由使用字元的宽度决定。如果 prompt 超过一行,您可以在每一行之间用复位字符 (Chr(13))、换行字元 (Chr(10))、或是复位字元与换行字元的组合 (Chr(13) & Chr(10)) 来做区隔。
buttons 数值表达式。用来指出显示按钮的数目及形式,使用的图示样式,预设按钮为何等。如果没有指定,则 buttons 的默认值是 0。
title 显示在对话框标题列中的字符串表达式。如果省略 title,则将应用程序的名称放在标题列中。
helpfile 用来辨识提供给对话框文字感应说明帮助文件表达式。如果指定了helpfile,则也必须指定context。
context 数值表达式,由说明档案的作者来指定适当的说明主题的说明主题代码。如果指定了 context,则也必须指定 helpfile。
参数 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 否」
注解:
如果同时指定了 helpfile 及 context ,使用者便可以按 F1 来查看与 context 相关的帮助主题。
如果对话框有显示 Cancel 按钮,则按下 ESC 键与按下 Cancel. 按钮效果相同。如果对话方块中有 Help 按钮,则对话框中提供有帮助文件说明。无论如何,在其他按钮中的一个被按下前,不会返回任何值。
Now 函数
语法
Now
返回电脑现在所记录的日期与时刻。
Oct 函数
语法
Oct(number)
返回字符串,代表一数字的八进位值。
参数 number 可为任何正确的表达式。
注解:
如果 number 不是整数,那么在执行前会先四舍五入成最近似的整数。返回值如下:
Number的取值 Oct返回值
Null Null
Empty 零(0)
任何其他的数字 最多可到11个八进制数
可以将八进位数字直接以&O 开头来表示。例如,&O10代表十进位的 8。
Replace 函数
语法
Replace(expression, find, replacewith[, start[, count[, compare]]])
返回一字符串,表示字符中的一个特定子字符串已经被另一个子符串取代的次数。
Replace 函数的语法包含以下的组成部分:
Expression为必须项。字符串表达式,包含了要被取代的子字符串。
find为必须项。要被搜寻的子字符串。
replacewith为必须项。用来取代的子字符串。
start为必须项。在 expression 中,子字符串搜寻动作的开始位置。如果省略,则预设为 1。
Count为 选择项。子字符串取代的执行次数。如果省略,默认值为 -1,表示将执行所有可能的取代动作。
compare 为选择项。指定子字符串比对的种类。
compare 参数的设定值如下:
常数 值 说明
vbBinaryCompare 0 执行二进制比较。
vbTextCompare 1 执行字符比较。
vbDatabaseCompare 2 执行数据内容比较。
Replace 函数有下列返回值:
条件 返回值
expression的长度为零 返回空字符串("")。
expression是Null 错误。
find的长度为零 一份expression的复制。
replacewith的长度为零 find的移除项目。
start> Len(expression) 空字符串。
count为零 一份expression的复制。
注解:
Replace 函数的返回值是一个字符串,而这个字符串已进行过取代动作。而取代动作是从 start 所决定的位置开始,在 expression 字符串的结尾停止执行。这个字符串不是原始字符串从头到尾的复制。
RGB 函数
语法
RGB(red,green,blue)
Red为红色,green为绿色,blue为蓝色
Right 函数
语法
Right(string, length)
返回一字符串右边特定数量的字符。
Right 函数语法有下列的参数:
string 字符串表达式,为函数欲执行的字符串表达式。如果 string 所含为 Null,则返回 Null。
length 数值表达式,指出欲返回右方多少字符。如果为 0,返回零长度("")。如果大于或等于 string 的字元数,则返回整个字符串。
注解:
要知道 string 的字符数,可用 Len 函数。
Rnd 函数
语法
Rnd[(number)]
返回一随机数。
参数 number 可以是任何的数值表达式。
注解:
Rnd 函数返回的随机数介于 0 和 1 之间,可等于 0,但不等于 1。
number 的值会影响 Rnd 返回的随机数:
Number的取值 返回值
小于0 每次都是使用numbe当做随机结果。
大于0 随机序列中的下一个随机数。
等于0 最近一次产生过的随机数。
省略 随机序列中的下一个随机数。
给定一个随机种子后,便会产生一特定的随机序列,因为每调用一次 Rnd 函数,它就会使用先前调用时所产生的随机值当成新的随机种子以产生新的随机值。
在使用 Rnd 之前,最好先调用 Randomize 语句,但不要给任何参数,如此便会以系统的时间当作乱数种子来起始乱数产生器。
若想产生在某个范围内(非 0 到 1)的整数乱数值,可使用下列公式:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
上述公式中,upperbound 是随机范围的上限,而 lowerbound 则是随机的下限。
附注:
若想得到重复的随机序列,可以在调用 Randomize 之前先调用 Rnd 并且传入一小于 0 的参数值。用同样的随机种子调用 Randomize 两次的话,并不会得到两次相同的乱数序列。
Round 函数
语法
Round(expression[, numdecimalplaces])
返回一个被四舍五入到某个小数位的数值。
Round 函数的语法包含以下的组成部分:
Expression为必须项。要被四舍五入的数值表达式。
numdecimalplaces 为选择项。此数字表示要四舍五入至小数下第几位。如果省略, Round 函数将返回整数。
ScriptEngine 函数
语法
ScriptEngine
返回一字符串,表示所使用的 Script 程式语言。
ScriptEngine 函数可返回下列任一字符串:
字符串 说明
VBScript 表示 Scripting Edition 是目前使用的 Script 引擎。
JScript 表示 Microsoft JScript 是目前使用的 Script 引擎。
VBA 表示 Microsoft Visual Basic for Applications 是目前使用的 Script 引擎。
ScriptEngineMajorVersion 函数
语法
ScriptEngineMajorVersion
返回所使用的 Script 引擎的主要版本编号。
注解:
返回值代表目前使用的 Script 程式语言,在 DLL 中所含的版本资讯。
ScriptEngineMinorVersion 函数
语法
ScriptEngineMinorVersion
返回所使用的 Script 引擎的次要版本编号。
注解:
返回值代表目前使用的 Script 程式语言,在 DLL 中所含的版本资讯。
Second 函数
语法
Second(time)
返回一值,从 0 到 59,表示一分钟之中的某秒。
参数 time 可以是任何可以表示出合理时间的表达式。如果 time 的值为 Null 则返回 Null。
Sgn 函数
语法
Sgn(number)
返回一个整数代表参数的正负号。
参数 number 可以是任何的数值表达式。
Sgn 函数有下列返回值:
number 返回值
大于 0 1
等于 0 0
小于 0 -1
注解:
参数 number 的正负号决定了 Sgn 函数的返回值。
Sin 函数
语法
Sin(number)
返回参数的 sine (正弦函数)值。
参数 number 可以是任何的数值表达式,其值代表一个角度,以弧度为单位。
注解:
Sin 函数的参数值代表一角度,其返回值为该角度之「另一锐角之邻边除以对边」的值。返回值的范围在 -1 到 1 之间。
Space 函数
语法
Space(number)
返回特定数目空格的字符串。
参数 number 是您想要的空格数。
Split 函数
语法
Split(expression[, delimiter[, count[, compare]]])
返回一个以零为基数,一维的数组。这个数组会包含特定个数的子字符串。
Split 函数的语法包含以下几部分:
expression 为必须项。为一字符串表达式,这个字符串表达式要包含子字符串及分隔符号。如果 expression 的长度为零,Split 函数会返回一个空的数组,也就是说,一个没有包含任何元素及数据的数据。
delimiter 为选择项。用来表示子字符串界限的字符串字元。如果省略,空白字元 (" ") 将被指定为分隔符号。如果 delimiter 为空字符串,会返回一个元素,即包含了整个 expression 字符串的数组。
count 为选择项。要被返回的子字符串个数。-1 则表示所有的子字符串将被返回。
compare 选择项。指定字符串比对的种类。
compare 参数的设定值如下:
常数 值 说明
vbBinaryCompare 0 执行二进制比较。
vbTextCompare 1 执行字符比较。
vbDatabaseCompare 2 执行数据内容比较。
Sqr 函数
语法
Sqr(number)
返回参数的平方根。
参数 number 可以是任何的数值表达式,只要参数值大于或等于 0 即可。
StrComp 函数
语法
StrComp(string1, string2[, compare])
返回一值,代表字符串比较的结果。 StrComp 函数语法有下列的参数:
string1 为必须项。任何正确的字符串表达式。
string2为必须项。任何正确的字符串表达式。
compare 为选择项。指定字符串比对的型态。如果省略,则进行二进制比较。
参数 compare 的设定值如下:
常数 值 说明
vbBinaryCompare 0 执行二进制比较。
vbTextCompare 1 执行字符比较。
vbDatabaseCompare 2 执行数据内容比较。
StrComp 函数有下列返回值:
条件 返回值
string1小于string2 -1
string1等于string2 0
string1大于string2 1
string1或string2为Null Null
StrReverse 函数
语法
StrReverse(string1)
将特定字符串的字元顺序颠倒后返回。
string1 参数是要颠倒的字符串。如果 string1 的长度为零 (""),将返回一空字符串。如果 string1 是 Null,将会产生错误。
String 函数
语法
String(number, character)
返回一特定长度的重复字符的字符串。
String 函数语法有下列的参数:
number 为欲返回之字符串长度。如果 number 的值为 Null,则返回 Null。
character 字符码 (代表某特定字元) 或字符串表达式(使用其第一个字元),将用来建构返回字符串的特定字符。如果 character 的值为 Null,则返回 Null。
注解:
如果您设定 character 的数值大于255,String 会以下面式子将之转为正确的字符码:
character Mod 256
Tan 函数
语法
Tan(number)
返回参数的「正切」( tangent) 函数值。
参数 number 可以是任何的数值表达式,其值代表一个角度,以「弧度」为单位。
注解:
Tan 的参数值代表一角度,其返回值为其「对边除以连接直角的邻边」的值。
Time 函数
语法
Time
返回一 Variant (Date),内容为系统时间(电脑所记录的现在时刻)。
TimeSerial 函数
语法
TimeSerial(hour, minute, second)
返回一 Variant (Date),内容为指定之时、分、秒的日期表示式。
TimeSerial 函数语法有下列的参数:
hour 其值从 0 (12:00 A.M.) 到 23 (11:00 P.M.),或一数值表达式。
minute 任何数值表达式。
second 任何数值表达式。
注解:
要表示某个时刻,如 11:59:59,TimeSerial 函数的各个参数值必需各落在其合理的范围内。也就是,[时] 必需介于 0-23,而 [分] 与 [秒] 则必需介于 0-59。不过,您也可以在传递参数时使用数值表达式来得知对应于某基准时刻的相对时间。下列范例便是使用表达式来求得相对时间,而不是直接求得某个时刻的日期表示式。范例中 TimeSerial 函数将返回正午之前六小时 (12 - 6) 又十五分 (-15) 的时间,即 5:45:00 A.M.。
TimeSerial(12 - 6, -15, 0)
当有任何一个参数值超出其合理范围时,函数会自动将其进位到下一个更大的时间单位中。例如,如果 [分] 的参数值为 75(75 分钟),函数会将它解译成一小时又十五分。如果任何一个参数值超出 -32,768 到 32,767 的范围,会产生程式错误。如果计算结果的时间会超出作业系统所接受的时间或日期范围,亦会产生程序错误。
TimeValue 函数
语法
TimeValue(time)
返回一 Variant (Date) 的时间表示式。
参数 time 通常是一个字符串表达式,用来表示一个时刻,从 0:00:00 (12:00:00 A.M.) 到 23:59:59 (11:59:59 P.M.) 。不过,time 也可以是能表示合理时刻的任何表达式。如果 time 的值为 Null,则返回 Null。
注解:
可以使用 12 小时制或 24 小时制的时间格式。例如, "2:24PM" 及 "14:24" 均是合理的时间表示式。
如果参数 time 内容包含日期,TimeValue 会舍去日期。然而,若 time 只有日期,则会产生程序错误。
TypeName 函数
语法
TypeName(varname)
返回一个 String,它提供某个变量的相关信息。
必要项 varname 可以是任何变数。
TypeName 函数有下列返回值:
值 说明
Byte 位元值
Integer 整数
Long 长整数
Single 单倍精确浮点数
Double 双倍精确浮点数
Currency 货币
Decimal 十进位值
Date 日期或时间
String 字符串
Boolean布林值: True或False
Empty 未初始化
Null 未含有效的数据
<object type> 物件实际型态名称
Object 一般组件
Unknown 型态未知的组件
Nothing 物件变数不再引用任何物件
Error 错误
UBound 函数
语法
UBound(arrayname[, dimension])
返回指定数组某维最大可使用的索引。
UBound 函数语法有下列几部份:
arrayname 必要的参数。数组变量的名称,遵循标准变数命名规格。
dimension 选择项。表示返回的是那一维的上限。1 表示第一维,2 表示第二维,依此类推。如果省略 dimension,则默认是 1。
注解:
UBound 函数和 LBound 函数一起使用可以决定阵列的大小。使用 LBound 函数来找出阵列每一维的下限。
任何维数初试值的下限永远是 0。所以,若数组的维数如下所示,UBound 返回如下表的值:
Dim A(100,3,4)
返回值
UBound(A, 1)为 99
UBound(A, 2)为 2
UBound(A, 3)为 3
UCase 函数
语法
UCase(string)
返回一转成大写的字符串。
参数 string 可以是任何字符串表达式。如果 string 所含为 Null,则返回 Null。
注解:
只有小写的字母会转成大写;原本大写或非字母之字元保持不变。
VarType 函数
语法
VarType(varname)
返回一值,表示变数的类型。
参数 varname 可以是任何变数。
VarType 函数的返回值如下:
常数 值 说明
vbEmpty 0 Empty(未初始化)
vbNull 1 Null(无有效数据)
vbInteger 2 整数
vbLong 3 长整数
vbSingle 4 单倍精确浮点数
vbDouble 5 双倍精确浮点数
vbCurrency 6 货币
vbDate 7 日期
vbString 8 字符串
vbObject 9 Automation组件
vbError 10 错误
vbBoolean 11 Boolean值
vbVariant 12 Variant(只适用于variants中的数组)
vbDataObject 13 数据存取组件
vbByte 17 二进制值
vbArray 8192 数组
注解:
VarType 函数从不对 vbArray 返回单独的值,而会加上其他的值来表示一个数组是属于某种特殊类型。vbVariant 这个常数只会与 vbArray 同时返回,以用来表示 VarType 函数的参数是一个数组的 Variant 。举例而言,一个整数数组的计算结果是 2 + 8194,或是 8194。 如果一个物件有初始的属性,VarType (object) 会返回此物件初始的属性。
附注:
这些常数是由 VBScript 针对应用程式所特别设定的。这些名称可以被用在程序码的任何地方,用以取代真正的值。
Weekday 函数
语法
Weekday(date, [firstdayofweek])
返回一整数,代表某个日期是星期几。
Weekday 函数语法有下列的参数:
date 任何可以表示一合理日期的表达式。如果 date 所含为 Null,则返回 Null。
firstdayofweek 常数,表示一星期的第一天。如果省略此参数,则以 vbSunday (星期日)为默认值。
参数 firstdayofweek 有以下的设定值:
常数 值 说明
vbUseSystem 0 使用NLS API设定。
vbSunday 1 星期日
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六
WeekDayName 函数
语法
WeekDayName(weekday, abbreviate, firstdayofweek)
返回一字符串,表示一星期中的某一天。
WeekDayName 函数的语法有下列部分:
weekday 为必须项。表示是一星期中的哪一天的数值,而每一天所使用的数值则依照 firstdayofweek 的设定。
abbreviate 为选择项。为一boolean值,它可指定每日的名称是否为缩写。若省略,则默认值为 False,即表示每日的名称不为缩写。
firstdayofweek 选择项。表示一星期中第一天的数值。
Year 函数
语法
Year(date)
返回一数值,表示某个年份。
参数 date 可以是任何表达式,只要能够表示一个合理的日期即可。如果 date 的值为 Null,则返回 Null。
DateDiff 函数 祥解
DateDiff 函数
描述
返回两个日期之间的时间间隔。
语法
DateDiff(interval, date1, date2 [,firstdayofweek][, firstweekofyear]])
DateDiff 函数的语法有以下参数:
参数 描述
interval 必选。字符串表达式,表示用于计算 date1 和 date2 之间的时间间隔。有关数值,请参阅“设置”部分。
date1, date2 必选。日期表达式。用于计算的两个日期。
firstdayofweek 可选。指定星期中第一天的常数。如果没有指定,则默认为星期日。有关数值,请参阅“设置”部分。
firstweekofyear 可选。指定一年中第一周的常数。如果没有指定,则默认为 1 月 1 日所在的星期。有关数值,请参阅“设置”部分。
设置
interval 参数可以有以下值:
设置 描述
yyyy 年
q 季度
m 月
y 一年的日数
d 日
w 一周的日数
ww 周
h 小时
m 分钟
s 秒
firstdayofweek 参数可以有以下值:
常数 值 描述
vbUseSystem 0 使用区域语言支持 (NLS) API 设置。
vbSunday 1 星期日(默认)
vbMonday 2 星期一
vbTuesday 3 星期二
vbWednesday 4 星期三
vbThursday 5 星期四
vbFriday 6 星期五
vbSaturday 7 星期六
firstweekofyear 参数可以有以下值:
常数 值 描述
vbUseSystem 0 使用区域语言支持 (NLS) API 设置。
vbFirstJan1 1 由 1 月 1 日所在的星期开始(默认)。
vbFirstFourDays 2 由在新年中至少有四天的第一周开始。
vbFirstFullWeek 3 由在新的一年中第一个完整的周开始。
说明
DateDiff 函数用于判断在两个日期之间存在的指定时间间隔的数目。例如可以使用 DateDiff 计算两个日期相差的天数,或者当天到当年最后一天之间的星期数。
要计算 date1 和 date2 相差的天数,可以使用“一年的日数”(“y”)或“日”(“d”)。当 interval 为“一周的日数”(“w”)时,DateDiff 返回两个日期之间的星期数。如果 date1 是星期一,则 DateDiff 计算到 date2 之前星期一的数目。此结果包含 date2 而不包含 date1。如果 interval 是“周”(“ww”),则 DateDiff 函数返回日历表中两个日期之间的星期数。函数计算 date1 和 date2 之间星期日的数目。如果 date2 是星期日,DateDiff 将计算 date2,但即使 date1 是星期日,也不会计算 date1。
如果 date1 晚于 date2,则 DateDiff 函数返回负数。
firstdayofweek 参数会对使用“w”和“ww”间隔符号的计算产生影响。
如果 date1 或 date2 是日期文字,则指定的年度会成为日期的固定部分。但是如果 date1 或 date2 被包括在引号 (" ") 中并且省略年份,则在代码中每次计算 date1 或 date2 表达式时,将插入当前年份。这样就可以编写适用于不同年份的程序代码。
在 interval 为“年”(“yyyy”)时,比较 12 月 31 日和来年的 1 月 1 日,虽然实际上只相差一天,DateDiff 返回 1 表示相差一个年份。
判断函数一览
<1>IsArray 函数
返回 Boolean 值指明某变量是否为数组。
语法
IsArray(varname)
varname 参数可以是任意变量。
说明
如果变量是数组,IsArray 函数返回 True;否则,函数返回 False。当变量中包含有数组时,使用 IsArray 函数很有效。
<2>IsDate 函数
返回 Boolean 值指明某表达式是否可以转换为日期。
语法
IsDate(expression)
expression 参数可以是任意可被识别为日期和时间的日期表达式或字符串表达式。
说明
如果表达式是日期或可合法地转化为有效日期,则 IsDate 函数返回 True;否则函数返回 False。在 Microsoft Windows 操作系统中,有效的日期范围公元 100 年 1 月 1 日到公元 9999 年 12 月 31 日;合法的日期范围随操作系统不同而不同。
<3>IsEmpty 函数
返回 Boolean 值指明变量是否已初始化。
语法
IsEmpty(expression)
expression 参数可以是任意表达式。然而,由于 IsEmpty 用于判断一个变量是否已初始化,故 expression 参数经常是一个变量名。
说明
如果变量未初始化或显式地设置为 Empty,则函数 IsEmpty 返回 True;否则函数返回 False。如果 expression 包含一个以上的变量,总返回 False。
<4>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。
<5>IsNumeric 函数
返回 Boolean 值指明表达式的值是否为数字。
语法
IsNumeric(expression)
expression 参数可以是任意表达式。
说明
如果整个 expression 被识别为数字,IsNumeric 函数返回 True;否则函数返回 False。
如果 expression 是日期表达式,IsNumeric 函数返回 False。
<6>IsObject 函数
返回 Boolean 值指明表达式是否引用了有效的 Automation 对象。
语法
IsObject(expression)
expression 参数可以是任意表达式。
说明
如果 expression 是 Object 子类型变量或用户自定义的对象,则 IsObject 返回 True;否则函数返回 False。