vbscript函数详解

hslfsx

贡献于2016-09-29

字数:44167 关键词: 测试工具

vbscript函数详解 目录 一、字符串函数 4 Len 函数 4 Left 函数 4 Mid 函数 5 Right 函数 5 InStr 函数 6 InStrRev 函数 8 LTrim、RTrim 和 Trim 函数 9 LCase 函数 10 UCase 函数 10 Replace 函数 11 StrComp 函数 12 Split 函数 13 Join 函数 14 StrReverse 函数 15 String 函数 16 Space 函数 16 二、转换函数 17 Asc 函数 17 Chr 函数 17 CStr 函数 18 CBool 函数 19 CByte 函数 19 CCur 函数 20 CDate 函数 21 CDbl 函数 21 CInt 函数 22 CLng 函数 23 CSng 函数 23 三、判断函数 24 IsArray 函数 24 IsDate 函数 25 IsEmpty 函数 26 IsNull 函数 26 IsNumeric 函数 27 IsObject 函数 28 VarType 函数 28 TypeName 函数 30 四、时间函数 31 Date 函数 31 DateAdd 函数 31 DateDiff 函数 33 DatePart 函数 35 DateSerial 函数 37 DateValue 函数 38 Day 函数 39 Hour 函数 39 Minute 函数 40 Month 函数 40 MonthName 函数 40 Now 函数 41 Second 函数 41 Time 函数 42 TimeSerial 函数 42 TimeValue 函数 43 Weekday 函数 43 WeekdayName 函数 45 Year 函数 46 五、数学函数 46 ABS函数 46 Atn 函数 47 Cos 函数 47 Exp 函数 48 Log 函数 48 Sin 函数 49 Sqr 函数 49 Tan 函数 50 Round 函数 50 Rnd 函数 51 Oct 函数 52 Hex 函数 52 六、格式化函数 53 FormatCurrency 函数 53 FormatDateTime 函数 54 FormatNumber 函数 55 FormatPercent 函数 57 七、其他函数 58 Array 函数 58 CreateObject 函数 58 GetObject 函数 60 MsgBox 函数 61 InputBox 函数 63 LBound 函数 64 UBound 函数 65 Filter 函数 66 LoadPicture 函数 68 RGB 函数 68 ScriptEngine 函数 69 ScriptEngineBuildVersion 函数 70 ScriptEngineMajorVersion 函数 70 ScriptEngine 函数 71 一、字符串函数 Len 函数 描述 返回字符串内字符的数目,或是存储一变量所需的字节数。 语法 Len(string | varname) Len 函数语法有以下参数: 参数 描述 string 任意有效的字符串表达式。如果 string 参数包含 Null,则返回 Null。 varname 任意有效的变量名。如果 varname 参数包含 Null,则返回 Null。 说明 下面的示例利用 Len 函数返回字符串中的字符数目: Dim MyString MyString = Len("VBSCRIPT") 'MyString 包含 8。 ============================================================= Left 函数 描述 返回指定数目的从字符串的左边算起的字符。 语法 Left(string, length) Left 函数的语法有以下参数: 参数 描述 string 字符串表达式,其最左边的字符被返回。如果 string 参数中包含 Null,则返回 Null。 length 数值表达式,指明要返回的字符数目。如果是 0,返回零长度字符串 ("");如果大于或等于 string 参数中的字符总数,则返回整个字符串。 说明 可使用 Len 函数确定 string 参数中的字符数目。 下面的示例利用Left 函数返回MyString 的左边三个字母: Dim MyString, LeftString MyString = "VBSCript" LeftString = Left(MyString, 3) 'LeftString 包含 "VBS"。 ============================================================= Mid 函数 描述 从字符串中返回指定数目的字符。 语法 Mid(string, start[, length]) Mid 函数的语法有以下参数: 参数 描述 string 字符串表达式,从中返回字符。如果 string 包含 Null,则返回 Null。 start string 中被提取的字符部分的开始位置。如果 start 超过了 string 中字符的数目,Mid 将返回零长度字符串 ("")。 length 要返回的字符数。如果省略或 length 超过文本的字符数(包括 start 处的字符),将返回字符串中从 start 到字符串结束的所有字符。 说明 要判断 string 中字符的数目,可使用 Len 函数。 下面的示例利用 Mid 函数返回字符串中从第四个字符开始的六个字符: Dim MyVar MyVar = Mid("VB Script is fun!", 4, 6) 'MyVar 包含 "Script"。 ============================================================= Right 函数 描述 从字符串右边返回指定数目的字符。 语法 Right(string, length) Right 函数的语法有以下参数: 参数 描述 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"。 ============================================================= InStr 函数 描述 返回某字符串在另一字符串中第一次出现的位置。 语法 InStr([start, ]string1, string2[, compare]) InStr 函数的语法有以下参数: 参数 描述 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"            ' 要在其中搜索的字符串。 SearchChar = "P"                        ' 搜索 "P"。 '文本比较从第四个字符开始返回 6。 MyPos = Instr(4, SearchString, SearchChar, 1)   '二进制比较从第1个字符开始返回 9。 MyPos = Instr(1, SearchString, SearchChar, 0) ' 缺省为二进制比较(最后一个参数省略)。 MyPos = Instr(SearchString, SearchChar)    ' 返回 9。 ' 二进制比较从第1个字符开始返回 0 (没有找到 "W")。 MyPos = Instr(1, SearchString, "W")        ============================================================= InStrRev 函数 描述 返回某字符串在另一个字符串中出现的从结尾计起的位置。 语法 InStrRev(string1, string2[, start[, compare]]) InStrRev 函数的语法有以下参数: 参数 描述 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"            '要在其中搜索的字符串。 SearchChar = "P"                        ' 搜索 "P"。 '二进制比较从第10个字符开始。返回 9。 MyPos = InstrRev(SearchString, SearchChar, 10, 0)   '文本比较从最后一个字符开始。返回 12。 MyPos = InstrRev(SearchString, SearchChar, -1, 1) ' 缺省为二进制比较(最后一个参数省略)。返回 0。 MyPos = InstrRev(SearchString, SearchChar, 8) ============================================================= LTrim、RTrim 和 Trim 函数 描述 返回不带前导空格 (LTrim)、后续空格 (RTrim) 或前导与后续空格 (Trim) 的字符串副本。 语法 LTrim(string) RTrim(string) Trim(string) string 参数是任意有效的字符串表达式。如果 string 参数中包含 Null,则返回 Null。 说明 下面的示例利用 LTrim, RTrim, and Trim 函数分别去除前导空格,末尾空格,前导空格和末尾空格都去除: Dim MyVar MyVar = LTrim("  vbscript ")  'MyVar 包含 "vbscript "。 MyVar = RTrim("  vbscript ")  'MyVar 包含 "  vbscript"。 MyVar = Trim("  vbscript ")   'MyVar 包含"vbscript"。 ============================================================= LCase 函数 描述 返回字符串的小写形式。 语法 LCase(string) string 参数是任意有效的字符串表达式。如果 string 参数中包含 Null,则返回 Null。 说明 仅大写字母转换成小写字母;所有小写字母和非字母字符保持不变。 下面的示例利用 LCase 函数把大写字母转换为小写字母: Dim MyString Dim LCaseString MyString = "VBSCript" LCaseString = LCase(MyString) ' LCaseString 包含 "vbscript"。 ============================================================ UCase 函数 描述 返回字符串的大写形式。 语法 UCase(string) string 参数是任意有效的字符串表达式。如果 string 参数中包含 Null,则返回 Null。 说明 只有小写字母被转换成大写字母;所有大写字母和非字母字符均保持不变。 下面的示例利用 UCase 函数返回字符串的大写形式: Dim MyWord MyWord = UCase("Hello World")    ' 返回"HELLO WORLD"。 ============================================================= Replace 函数 描述 返回字符串,其中指定数目的某子字符串被替换为另一个子字符串。 语法 Replace(expression, find, replacewith[, compare[, count[, start]]]) Replace 函数的语法有以下参数: 参数 描述 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 '二进制比较从字符串左端开始。返回 "XXYXXPXXY"。 MyString = Replace("XXpXXPXXp", "p", "Y") '文本比较从第三个字符开始。返回 "YXXYXXY"。 MyString = Replace("XXpXXPXXp", "p", "Y", 3, -1, 1) ============================================================= StrComp 函数 描述 返回指示字符串比较结果的值。 语法 StrComp(string1, string2[, compare]) StrComp 函数的语法有以下参数: 参数 描述 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。 ============================================================= Split 函数 描述 返回基于 0 的一维数组,其中包含指定数目的子字符串。 语法 Split(expression[, delimiter[, count[, start]]]) Split 函数的语法有以下参数: 参数 描述 expression 必选。字符串表达式,包含子字符串和分隔符。如果 expression 为零长度字符串,Split 返回空数组,即不包含元素和数据的数组。 delimiter 可选。用于标识子字符串界限的字符。如果省略,使用空格 ("") 作为分隔符。如果 delimiter 为零长度字符串,则返回包含整个 expression 字符串的单元素数组。 count 可选。被返回的子字符串数目,-1 指示返回所有子字符串。 compare 可选。指示在计算子字符串时使用的比较类型的数值。有关数值,请参阅“设置”部分。 设置 compare 参数可以有以下值: 常数 值 描述 vbBinaryCompare 0 执行二进制比较。 vbTextCompare 1 执行文本比较。 说明 下面的示例利用 Split 函数从字符串中返回数组。函数对分界符进行文本比较,返回所有的子字符串。 Dim MyString, MyArray MyString = Split("VBScriptXisXfun!", "x", -1, 1) ' MyString(0) 包含"VBScript"。 ' MyString(1) 包含"is"。 ' MyString(2) 包含 "fun!"。 ============================================================= Join 函数 描述 返回一个字符串,此字符串由包含在数组中的许多子字符串联接创建。 语法 Join(list[,delimiter]) Join 函数的语法有以下参数: 参数 描述 list 必选。包含要联接的子字符串一维数组。   delimiter 可选。在返回字符串中用于分隔子字符串的字符。如果省略,将使用空字符 ("")。 如果 delimiter 是零长度字符串,则在同一列表中列出全部项,没有分界符。 Remarks 下面的示例利用 Join 函数联合 MyArray 的子字符串: Dim MyString Dim MyArray(4) MyArray(0) = "Mr." MyArray(1) = "John " MyArray(2) = "Doe " MyArray(3) = "III" MyString = Join(MyArray) 'MyString 包含 "Mr. John Doe III"。 ============================================================= StrReverse 函数 描述 返回字符串,此字符串与指定字符串顺序相反。 语法 StrReverse(string1) string1 参数是要进行字符反向的字符串。如果 string1 是零长度字符串 (""),则返回零长度字符串。如果 string1 为 Null,则会出现错误。 说明 下面的示例利用 StrReverse 函数返回按相反顺序排列的字符串: Dim MyStr MyStr = StrReverse("VBScript") 'MyStr 包含 "tpircSBV"。 ============================================================= String 函数 描述 返回具有指定长度的、重复字符组成的字符串。 语法 String(number, character) String 函数的语法有以下参数: 参数 描述 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"。 ============================================================= Space 函数 描述 返回由指定数目的空格组成的字符串。 语法 Space(number) number 参数为字符串中用户所需的空格数。 说明 下面的示例利用 Space 函数返回由指定数目空格组成的字符串: Dim MyString MyString = Space(10)                     ' 返回具有 10 个空格的字符串。 MyString = "Hello" & Space(10) & "World" ' 在两个字符串之间插入 10 个空格。 ============================================================= 二、转换函数 Asc 函数 描述 返回与字符串的第一个字母对应的 ANSI 字符代码。 语法 Asc(string) string 参数是任意有效的字符串表达式。如果 string 参数未包含字符,则将发生运行时错误。 说明 下面例子中, Asc 返回每一个字符串首字母的 ANSI 字符代码: Dim MyNumber MyNumber = Asc("A")      '返回 65 MyNumber = Asc("a")      '返回 97 MyNumber = Asc("Apple")  '返回 65 ============================================================= Chr 函数 描述 返回与指定的 ANSI 字符代码相对应的字符。 语法 Chr(charcode) charcode 参数是可以标识字符的数字。 说明 从 0 到 31 的数字表示标准的不可打印的 ASCII 代码。例如,Chr(10) 返回换行符。 下面例子利用 Chr 函数返回与指定的字符代码相对应的字符: Dim MyChar MyChar = Chr(65)    '返回 A。 MyChar = Chr(97)    '返回 a。 MyChar = Chr(62)    '返回 >。 MyChar = Chr(37)    '返回 %。 ============================================================= CStr 函数 描述 返回表达式,该表达式已被转换为 String 子类型的 Variant。 语法 CStr(expression) expression 参数是任意有效的表达式。 说明 通常,可以使用子类型转换函数书写代码,以显示某些操作的结果应被表示为特定的数据类型,而不是默认类型。例如,使用 CStr 强制将结果表示为 String。 CStr 函数用于替代 Str 函数来进行从其他数据类型到 String 子类型的国际公认的格式转换。例如对十进制分隔符的识别取决于系统的区域设置。 expression 根据下表决定返回的数据: 如果 expression 为 CStr 返回 Boolean 字符串,包含 True 或 False。 Date 字符串,包含系统的短日期格式日期。 Null 运行时错误。 Empty 零长度字符串 ("")。 Error 字符串,包含跟随有错误号码的单词 Error。 其他数值 字符串,包含此数字。 下面的示例利用 CStr 函数把数字转换为 String: Dim MyDouble, MyString MyDouble = 437.324         ' MyDouble 是双精度值。 MyString = CStr(MyDouble)  ' MyString 包含 "437.324"。 =============================================================- CBool 函数 描述 返回表达式,此表达式已转换为 Boolean 子类型的 Variant。 语法 CBool(expression) expression 是任意有效的表达式。 说明 如果 expression 是零,则返回 False;否则返回 True。如果 expression 不能解释为数值,则将发生运行时错误。 下面的示例利用 CBool 函数把 expression 转换为 Boolean。如果 expression 不为零, 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 参数是任意有效的表达式。 说明 通常,可以使用子类型转换函数书写代码,以显示某些操作的结果应被表示为特定的数据类型,而不是默认类型。例如,在出现货币、单精度、双精度或整数运算的情况下,使用 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 函数把 expression 转换为 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 型。 MyDouble = CDbl(MyCurr * 8.2 * 0.01)    ' 把结果转换为 Double 型。 =============================================================-  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。 =============================================================- 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。 =============================================================- 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。 ============================================================ 三、判断函数 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。 ============================================================= 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(只和变量数组一起使用) vbDataObject 13 数据访问对象 vbByte 17 字节 vbArray 8192 数组 =============================================================  注意 这些常数是由 VBScript 指定的。所以,这些名称可在代码中随处使用,以代替实际值。 =============================================================   说明 VarType 函数从不通过自己返回 Array 的值。它总是要添加一些其他值来指示一个具体类型的数组。当 Variant 的值被添加到 Array 的值中以表明 VarType 函数的参数是一个数组时,它才被返回。例如,对一个整数数组的返回值是 2 + 8192 的计算结果,或 8194。如果一个对象有默认属性,则 VarType(object) 返回对象默认属性的类型。 下面函数利用 VarType 函数决定变量的子类型. Dim MyCheck MyCheck = VarType(300)           ' 返回 2。 MyCheck = VarType(#10/19/62#)    ' 返回 7。 MyCheck = VarType("VBScript")    ' 返回 8。 ============================================================= TypeName 函数 描述 返回一个字符串,提供有关变量的 Variant 子类型信息。 语法 TypeName(varname) 必选的 varname 参数,可以是任何变量。 返回值 TypeName 函数返回值如下: 值 描述 Byte 字节值 Integer 整型值 Long 长整型值 Single 单精度浮点值 Double 双精度浮点值 Currency 货币值 Decimal 十进制值 Date 日期或时间值 String 字符串值 Boolean Boolean 值;True 或 False Empty 未初始化 Null 无有效数据 实际对象类型名 Object 一般对象 Unknown 未知对象类型 Nothing 还未引用对象实例的对象变量 Error 错误 说明 下面的示例利用 TypeName 函数返回变量信息: Dim ArrayVar(4), MyType NullVar = Null    ' 赋 Null 值。 MyType = TypeName("VBScript")   ' 返回 "String"。 MyType = TypeName(4)            ' 返回 "Integer"。 MyType = TypeName(37.50)        ' 返回 "Double"。 MyType = TypeName(NullVar)      ' 返回 "Null"。 MyType = TypeName(ArrayVar)     ' 返回 "Variant()"。 ============================================================= 四、时间函数 Date 函数   描述 返回当前系统日期。 语法 Date Remarks 下面的示例利用 Date 函数返回当前系统日期: Dim MyDate MyDate = Date    ' MyDate 包含当前系统日期。 =============================================================- DateAdd 函数 描述 返回已添加指定时间间隔的日期。 语法 DateAdd(interval, number, date) DateAdd 函数的语法有以下部分: 部分 描述 interval 必选。字符串表达式,表示要添加的时间间隔。有关数值,请参阅“设置”部分。 number 必选。数值表达式,表示要添加的时间间隔的个数。数值表达式可以是正数(得到未来的日期)或负数(得到过去的日期)。 date 必选。Variant 或要添加 interval 的表示日期的文字。   设置 interval 参数可以有以下值: 设置 描述 yyyy 年 q 季度 m 月 y 一年的日数 d 日 w 一周的日数 ww 周 h 小时 n 分钟 s 秒 说明 可用 DateAdd 函数从日期中添加或减去指定时间间隔。例如可以使用 DateAdd 从当天算起 30 天以后的日期或从现在算起 45 分钟以后的时间。要向 date 添加以“日”为单位的时间间隔,可以使用“一年的日数”(“y”)、“日”(“d”)或“一周的日数”(“w”)。 DateAdd 函数不会返回无效日期。如下示例将 95 年 1 月 31 日加上一个月: NewDate = DateAdd("m", 1, "31-Jan-95") 在这个示例中,DateAdd 返回 95 年 2 月 28 日,而不是 95 年 2 月 31 日。如果 date 为 96 年 1 月 31 日,则返回 96 年 2 月 29 日,这是因为 1996 是闰年。 如果计算的日期是在公元 100 年之前,则会产生错误。 如果 number 不是 Long 型值,则在计算前四舍五入为最接近的整数。 ============================================================= DateDiff 函数 描述 返回两个日期之间的时间间隔。 语法 DateDiff(interval, date1, date2 [,firstdayofweek[, firstweekofyear]]) DateDiff 函数的语法有以下参数: 参数 描述 interval 必选。String expression 表示用于计算 date1 和 date2 之间的时间间隔。有关数值,请参阅“设置”部分。 date1, date2 必选。日期表达式。用于计算的两个日期。 firstdayofweek 可选。指定星期中第一天的常数。如果没有指定,则默认为星期日。有关数值,请参阅“设置”部分。 firstweekofyear 可选。指定一年中第一周的常数。如果没有指定,则默认为 1 月 1 日所在的星期。有关数值,请参阅“设置”部分。 设置 interval 参数可以有以下值: 设置 描述 yyyy 年 q 季度 n 月 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 表示相差一个年份。 下面例子利用 DateDiff 函数显示给定日期和当天日期之间的天数: Function DiffADate(theDate)   DiffADate = "从当天开始的天数:" & DateDiff("d", Now, theDate) End Function ============================================================= DatePart 函数 描述 返回给定日期的指定部分。 语法 DatePart(interval, date[, firstdayofweek[, firstweekofyear]]) DatePart 函数的语法有以下参数: 参数 描述 interval 必选。字符串表达式表示要返回的时间间隔。有关数值,请参阅“设置”部分。 date 必选。要计算的日期表达式。 firstdayof week 可选。指定星期中的第一天的常数。如果没有指定,则默认为星期日。有关数值,请参阅“设置”部分。 firstweekofyear 可选。指定一年中第一周的常数。如果没有指定,则默认为 1 月 1 日所在的星期。有关数值,请参阅“设置”部分。 设置 interval 参数可以有以下值: 设置 描述 yyyy 年 q 季度 m 月 y 一年的日数 d 日 w 一周的日数 ww 周 h 小时 n 分钟 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 由在新的一年中第一个完整的周(不跨年度)开始。 说明 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) DateSerial 函数的语法有以下参数: 参数 描述 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 日。 DateSerial(1990 - 10, 8 - 2, 1 - 1) 对于 year 参数,若取值范围是从 0 到 99,则被解释为 1900 到 1999 年。对于此范围之外的 year 参数,则使用四位数字表示年份(例如 1800 年)。 ============================================================= 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),代表某月中的一天。 语法 Day(date) date 参数是任意可以代表日期的表达式。如果 date 参数中包含 Null,则返回 Null。 下面例子利用 Day 函数得到一个给定日期月的天数: Dim MyDay MyDay = Day("October 19, 1962")  'MyDay 包含 19。 =============================================================-- Hour 函数 描述 返回 0 到 23 之间的一个整数(包括 0 和 23),代表一天中的某一小时。 语法 Hour(time) time 参数是任意可以代表时间的表达式。如果 time 参数中包含 Null,则返回 Null。 下面的示例利用 Hour 函数得到当前时间的小时: Dim MyTime, MyHour MyTime = Now MyHour = Hour(MyTime) ' MyHour 包含代表当前时间的数值。 ============================================================= 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]) MonthName 函数的语法有以下参数: 参数 描述 month 必选。月份的数值定义。例如,一月是 1,二月是 2,以此类推。 abbreviate 可选。Boolean 值,表明月份名称是否简写。如果省略,默认值为 False,即不简写月份名称。 说明 下面的示例利用MonthName 函数为日期表达式返回月份的缩写: Dim MyVar MyVar = MonthName(10, True) ' MyVar 包含 "Oct"。 ============================================================= Now 函数 描述 根据计算机系统设定的日期和时间返回当前的日期和时间值。 语法 Now 说明 下面的示例利用 Now 函数返回当前的日期和时间: Dim MyVar MyVar = Now ' MyVar 包含当前的日期和时间。 ============================================================= Second 函数 描述 返回 0 到 59 之间的一个整数(包括 1 和 59),代表一分钟内的某一秒。 语法 Second(time) time 参数是任意可以代表时间的表达式。如果 time 参数中包含 Null,则返回 Null。 说明 下面的示例利用 Second 函数返回当前秒: Dim MySec MySec = Second(Now) 'MySec 包含代表当前秒的数字。 ============================================================= Time 函数 描述 返回 Date 子类型 Variant,指示当前系统时间。 语法 Time 说明 下面的示例利用 Time 函数返回当前系统时间: Dim MyTime MyTime = Time    ' 返回当前系统时间。 ============================================================= TimeSerial 函数 描述 返回一个 Date 子类型的 Variant,含有指定时、分、秒的时间。 语法 TimeSerial(hour,minute, second) 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 分钟,则这个时间被解释成一小时十五分钟。但是,如果任何一个参数值超出 -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 函数把字符串转换为时间。也可以利用date literals 直接给Variant 赋值 (例如, MyTime = #4:35:17 PM#)。 Dim MyTime MyTime = TimeValue("4:35:17 PM")    ' MyTime 包含 "4:35:17 PM"。 ============================================================= 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 星期六 返回值 Weekday 函数返回如下值: 常数 值 描述 vbSunday 1 星期日 vbMonday 2 星期一 vbTuesday 3 星期二 vbWednesday 4 星期三 vbThursday 5 星期四 vbFriday 6 星期五 vbSaturday 7 星期六 说明 下面例子利用 Weekday 函数得到指定日期为星期几: Dim MyDate, MyWeekDay MyDate = #October 19, 1962#    ' 分派日期。 MyWeekDay = Weekday(MyDate)    ' 由于 MyWeekDay 包含 6                                  ' MyDate 代表星期五。 ============================================================= WeekdayName 函数 描述 返回一个字符串,表示星期中指定的某一天。 语法 WeekdayName(weekday, abbreviate, firstdayofweek) WeekdayName 函数的语法有以下参数: 参数 描述 weekday 必选。星期中某天的数值定义。各天的数值定义取决于 firstdayofweek 参数设置。 abbreviate 可选。Boolean 值,指明是否缩写表示星期各天的名称。如果省略, 默认值为 False,即不缩写星期各天的名称。 firstdayofweek 可选。指明星期第一天的数值。关于数值,请参阅“设置”部分。 设置 firstdayofweek 参数有以下值: 常数 值 描述 vbUseSystem 0 使用区域语言支持 (NLS) API 设置。 vbSunday 1 星期日(默认) vbMonday 2 星期一 vbTuesday 3 星期二 vbWednesday 4 星期三 vbThursday 5 星期四 vbFriday 6 星期五 vbSaturday 7 星期六 说明 下面例子利用 WeekDayName 函数返回指定的某一天: Dim MyDate MyDate = WeekDayName(6, True)  'MyDate 包含 Fri。 ============================================================= Year 函数 描述 返回一个代表某年的整数。 语法 Year(date) date 参数是任意可以代表日期的参数。如果 date 参数中包含 Null,则返回 Null。 说明 下面例子利用 Year 函数得到指定日期的年份: Dim MyDate, MyYear MyDate = #October 19, 1962#   '分派一日期。 MyYear = Year(MyDate)         ' MyYear 包含 1962。 ============================================================= 五、数学函数 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 =============================================================--------------------------- Atn 函数 描述 返回数值的反正切值。 语法 Atn(number) number 参数可以是任意有效的数值表达式。 说明 Atn 函数计算直角三角形两个边的比值 (number) 并返回对应角的弧度值。此比值是该角对边的长度与邻边长度之比。结果的范围是从 -pi/2 到 pi/2 弧度。 将角度乘以 pi/180 即可转换为弧度,将弧度乘以 180/pi 即可转换为角度。 下面的示例利用 Atn 计算 pi 值: Dim pi pi = 4 * Atn(1)   '计算 pi 值. =============================================================- Cos 函数 描述 返回某个角的余弦值。 语法 Cos(number) number 参数可以是任何将某个角表示为弧度的有效数值表达式。 说明 Cos 函数取某个角并返回直角三角形两边的比值。此比值是直角三角形中该角的邻边长度与斜边长度之比。结果范围在 -1 到 1 之间。 将角度乘以 pi/180 即可转换为弧度,将弧度乘以 180/pi 即可转换为角度。 下面的示例利用 Cos 函数返回一个角的余弦值: Dim MyAngle, MySecant MyAngle = 1.3                ' 用弧度定义一个角。 MySecant = 1 / Cos(MyAngle)  ' 计算正割。 ============================================================= 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 ============================================================= 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 ============================================================= Sin 函数 描述 返回某个角的正弦值。 语法 Sin(number) number 参数可以是任何将某个角表示为弧度的有效数值表达式。 说明 Sin 函数取某个角并返回直角三角形两边的比值。此比值是直角三角形中该角的对边长度与斜边长度之比。结果的范围在 -1 到 1 之间。 将角度乘以 pi/180 即可转换为弧度,将弧度乘以 180/pi 即可转换为角度。 下面例子利用 Sin 返回角度的正弦: Dim MyAngle, MyCosecant MyAngle = 1.3                   ' 用弧度定义角度。 MyCosecant = 1 / Sin(MyAngle)   '计算余割。 ============================================================= Sqr 函数 描述 返回数值的平方根。 语法 Sqr(number) number 参数可以是任意有效的大于或等于零的数值表达式。 说明 下面的示例利用 Sqr 函数计算数值的平方根: Dim MySqr MySqr = Sqr(4)     ' 返回 2。 MySqr = Sqr(23)    ' 返回4.79583152331272。 MySqr = Sqr(0)     ' 返回0。 MySqr = Sqr(-4)    ' 产生实时错误。 ============================================================= Tan 函数 描述 返回某个角的正切值。 语法 Tan(number) number 参数可以是任何将某个角表示为弧度的有效数值表达式。 说明 Tan 取某个角并返回直角三角形两个直角边的比值。此比值是直角三角形中该角的对边长度与邻边长度之比。将角度乘以 pi/180 即可转换为弧度,将弧度乘以 180/pi 即可转换为角度。 下面的示例利用 Tan 函数返回角度的正切: Dim MyAngle, MyCotangent MyAngle = 1.3                     ' 用弧度定义角度。 MyCotangent = 1 / Tan(MyAngle)    ' 计算余切。 ============================================================= Round 函数 描述 返回按指定位数进行四舍五入的数值。 语法 Round(expression[, numdecimalplaces]) Round 函数的语法有以下参数: 参数 描述 expression 必选。 数值表达式 被四舍五入。 numdecimalplaces 可选。数字表明小数点右边有多少位进行四舍五入。如果省略,则 Round 函数返回整数。   下面的示例利用 Round 函数将数值四舍五入到两位小数: Dim MyVar, pi pi = 3.14159 MyVar = Round(pi, 2) 'MyVar contains 3.14。 ============================================================= Rnd 函数 描述 返回一个随机数。 语法 Rnd[(number)] number 参数可以是任意有效的数值表达式。 说明 Rnd 函数返回一个小于 1 但大于或等于 0 的值。 number 的值决定了 Rnd 生成随机数的方式: 如果 number 为 Rnd 生成 小于零 每次都相同的值,使用 number 作为种子。 大于零 序列中的下一个随机数。 等于零 最近生成的数。 省略 序列中的下一个随机数。 因每一次连续调用 Rnd 函数时都用序列中的前一个数作为下一个数的种子,所以对于任何最初给定的种子都会生成相同的数列。 在调用 Rnd 之前,先使用无参数的 Randomize 语句初始化随机数生成器,该生成器具有基于系统计时器的种子。 要产生指定范围的随机整数,请使用以下公式: Int((upperbound - lowerbound + 1) * Rnd + lowerbound) 这里, upperbound 是此范围的上界,而 lowerbound 是此范围内的下界。 ============================================================= Oct 函数 描述 返回表示数字八进制值的字符串。 语法 Oct(number) number 参数是任意有效的表达式。 说明 如果 number 参数不是整数,则在进行运算前,将其四舍五入到最接近的整数。 如果 number 是 Oct 返回 Null Null。 Empty 零 (0)。 任意其他数字 最大可到 11 位的八进制字符。 用户也可以通过直接在数前加上 &O 表示八进制数。例如,&O10 为十进制数 8 的八进制表示法。 下面的示例利用 Oct 函数返回数值的八进制数: Dim MyOct MyOct = Oct(4)     ' 返回 4。 MyOct = Oct(8)     ' 返回 10。 MyOct = Oct(459)   ' 返回 713。 ============================================================= Hex 函数 描述 返回表示十六进制数字值的字符串。 语法 Hex(number) number 参数是任意有效的表达式。 说明 如果 number 参数不是整数,则在进行运算前将其四舍五入为最接近的整数。 如果 number 是 Hex 返回 Null Null。 Empty 零 (0)。 其他数 最大到八位的十六进制字符。 您可以通过在数字前面添加前缀 &H 来表示十六进制数。例如,在十六进制计数法中,&H10 表示十进制数 16。 下面的示例利用 Hex 函数返回数字的十六进制数: Dim MyHex MyHex = Hex(5)    ' 返回 5。 MyHex = Hex(10)   ' 返回A。 MyHex = Hex(459)  '返回 1CB。 ============================================================= 六、格式化函数 FormatCurrency 函数 描述 返回表达式,此表达式已被格式化为货币值(使用系统控制面板中定义的货币符号)。 语法 FormatCurrency(expression[,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers [,GroupDigits]]]]) FormatCurrency 函数的语法有以下参数: 参数 描述 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]) FormatDateTime 函数的语法有以下参数: 参数 描述 Date 必选。要被格式化的日期表达式。 NamedFormat 可选。指示所使用的日期/时间格式的数值,如果省略,则使用 vbGeneralDate。 设置 NamedFormat 参数可以有以下值: 常数 值 描述 vbGeneralDate 0 显示日期和/或时间。如果有日期部分,则将该部分显示为短日期格式。如果有时间部分,则将该部分显示为长时间格式。如果都存在,则显示所有部分。   vbLongDate 1 使用计算机区域设置中指定的长日期格式显示日期。 vbShortDate 2 使用计算机区域设置中指定的短日期格式显示日期。 vbLongTime 3 使用计算机区域设置中指定的时间格式显示时间。 vbShortTime 4 使用 24 小时格式 (hh:mm) 显示时间。 说明 下面例子利用 FormatDateTime 函数把表达式格式化为长日期型并且把它赋给 MyDateTime:  Function GetCurrentDate   'FormatDateTime 把日期型格式化为长日期型。   GetCurrentDate = FormatDateTime(Date, 1) End Function ============================================================= FormatNumber 函数 描述 返回表达式,此表达式已被格式化为数值。 语法 FormatNumber(expression [,NumDigitsAfterDecimal [,IncludeLeadingDigit [,UseParensForNegativeNumbers [,GroupDigits]]]]) FormatNumber 函数的语法有以下参数: 参数 描述 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%。 ============================================================= 七、其他函数 Array 函数 描述 返回包含数组的 Variant。 语法 Array(arglist) arglist 参数是赋给包含在 Variant 中的数组元素的值的列表(用逗号分隔)。如果没有指定此参数,则将会创建零长度的数组。 说明 用于引用数组元素的表示符,由跟随有括号的变量名组成,括号中包含指示所需元素的索引号。在下面的示例中,第一条语句创建名为 A 的变量。第二条语句将一个数组赋值给变量 A。最后一条语句将包含在第二个数组元素中的值赋值给另一个变量。 Dim A A = Array(10,20,20) B = A(2) ============================================================= CreateObject 函数 描述 创建并返回对 Automation 对象的引用。 语法 CreateObject(class) class 参数使用语法 servername.typename,有以下部分: 部分 描述 servername 提供对象的应用程序名称。 typename 要创建的对象类型或类。 说明 Automation 服务器至少提供一种对象类型。例如,字处理应用程序可以提供应用程序对象、文档对象和工具条对象。 要创建 Automation 对象,将 CreateObject 函数返回的对象赋值给某对象变量: Dim ExcelSheet Set ExcelSheet = CreateObject("Excel.Sheet") 上述代码启动创建对象(在此实例中,是 Microsoft Excel 电子表格)的应用程序。对象创建后,就可以在代码中使用定义的对象变量引用此对象。在下面的示例中,可使用对象变量、ExcelSheet 和其他 Excel 对象,包括 Application 对象和 Cells 集合访问新对象的属性和方法。例如: ' 通过 Application 对象使 Excel 可见。 ExcelSheet.Application.Visible = True ' 在工作表的第一个单元中放置文本。 ExcelSheet. ActiveSheet.Cells(1,1).Value = "这是 A 列第一行" ' 保存工作表。 ExcelSheet.SaveAs "C:\DOCS\TEST.XLS" ' 在 Application 对象中使用 Quit 方法退出 Excel。 ExcelSheet.Application.Quit ' 释放对象变量。 Set ExcelSheet = Nothing Set myObj = CreateObject("WScript.Shell") Set myObj = CreateObject("Excel.Application") Set myObj = CreateObject("Scripting.FileSystemObject") Set myObj = CreateObject("Scripting.Dictionary") Set myObj = CreateObject("ADODB.Connection") Set myObj = CreateObject("ADODB.Recordset") Set myObj = CreateObject("Microsoft.XMLDOM") Set myObj = CreateObject(“InternetExplorer.Application”) ============================================================= GetObject 函数 描述 返回对文件中 Automation 对象的引用。 语法 GetObject([pathname] [, class]) GetObject 函数的语法有以下参数: 参数 描述 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" ============================================================= 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。在 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 否 说明 如果同时提供了 helpfile 和 context,则用户可以按 F1 键以查看与上下文相对应的帮助主题。 如果对话框显示取消按钮,则按 ESC 键与单击取消的效果相同。如果对话框包含帮助按钮,则有为对话框提供的上下文相关帮助。但是在单击其他按钮之前,不会返回任何值。 下面的示例利用MsgBox 函数显示一信息框并且返回值说明了按下的是那一个按钮: Dim MyVar MyVar = MsgBox ("Hello World!", 65, "MsgBox 例子") ' MyVar 包含 either 1 or 2,                                                         '依赖于被按下的按钮。 ============================================================= 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,就会在对话框中自动添加“帮助”按钮。 如果用户单击确定或按下 ENTER,则 InputBox 函数返回文本框中的内容。如果用户单击取消,则函数返回一个零长度字符串 ("")。 下面例子利用 InputBox 函数显示一输入框并且把字符串赋值给输入变量: Dim Input Input = InputBox("输入名字") MsgBox ("输入: " & Input) ============================================================= LBound 函数 描述 返回指定数组维的最小可用下标。 语法 LBound(arrayname[, dimension]) LBound 函数的语法有以下参数: 参数 描述 arrayname 数组变量名,遵循标准变量命名约定。 dimension 指明要返回哪一维下界的整数。使用 1 表示第一维,2 表示第二维,以此类推。如果省略 dimension 参数,默认值为 1。 说明 LBound 函数与 UBound 函数共同使用以确定数组的大小。使用 UBound 函数可以找到数组某一维的上界。 任一维的下界都是 0。 ============================================================= UBound 函数 描述 返回指定数组维数的最大可用下标。 语法 UBound(arrayname[, dimension]) UBound 函数的语法有以下参数: 参数 描述 arrayname 必选。数组变量名,遵循标准变量命名约定。 dimension 可选。指定返回哪一维上界的整数。1 表示第一维,2 表示第二维,以此类推。如果省略 dimension 参数,则默认值为 1。 说明 UBound 函数与 LBound 函数一起使用,用于确定数组的大小。使用 LBound 函数可以确定数组某一维的下界。 所有维的下界均为 0。对于有这样维数的数组,UBound 函数返回以下结果: Dim A(100,3,4) 语句 返回值 UBound(A, 1) 100 UBound(A, 2) 3 UBound(A, 3) 4 ============================================================= Filter 函数 描述 返回以零为基础的 array,其中包含以特定过滤条件为基础的字符数组集. 语法 Filter(InputStrings, Value[, Include[, Compare]]) Filter 函数的语法有以下参数: 参数 描述 InputStrings 必选。一维数组,要在其中搜索字符串。 Value 必选。要搜索的字符串。 Include 可选。Boolean 值,指定返回的子字符串是否包含 Value。如果 Include 为 True,Filter 将返回包含子字符串 Value 的数组子集。如果 Include 为 False,Filter 将返回不包含子字符串 Value 的数组子集。 Compare 可选。数字值指出使用的比较字符串 类型.参阅值设置部分. 设置 Compare 参数可以有以下值: 常数 值 描述 vbBinaryCompare 0 执行二进制比较。 vbTextCompare 1 执行文本比较。 vbDatabaseCompare 2 执行基于数据库(在此数据库中执行比较)中包含的信息的比较。 说明 如果在 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"。 ============================================================= 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 and 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。 =============================================================-- LoadPicture 函数 描述 返回图片对象。 语法 LoadPicture(picturename) picturename 参数是字符串表达式,该表达式指明了要装入的图片文件的名称。 说明 可以由 LoadPicture 识别的图形格式有位图文件 (.bmp)、图标文件 (.ico)、行程编码文件 (.rle)、图元文件 (.wmf)、增强型图元文件 (.emf)、GIF (.gif) 文件和 JPEG (.jpg) 文件。 ============================================================= RGB 函数 描述 返回代表 RGB 颜色值的整数。 语法 RGB(red, green, blue) RGB 函数的语法有以下参数: 部分 描述 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。 ============================================================= ScriptEngine 函数 描述 返回一个代表当前使用的 Script 程序语言的字符串。 语法 ScriptEngine 返回值 ScriptEngine 函数可返回下列字符串: 字符串 描述 VBScript 表明当前使用的 Script 引擎是 Microsoft(R) Visual Basic(R) Scripting Edition。 JScript 表明当前使用的 Script 引擎是 Microsoft JScript™。 VBA 表明当前使用的 Script 引擎是 Microsoft Visual Basic for Applications。 说明 下面的示例利用 ScriptEngine 函数返回描述所用书写语言的字符串: Function GetScriptEngineInfo   Dim s   s = ""   '用必要的信息形成字符串。   s = ScriptEngine & " Version "   s = s & ScriptEngineMajorVersion & "."   s = s & ScriptEngineMinorVersion & "."   s = s & ScriptEngineBuildVersion   GetScriptEngineInfo =  s  '返回结果。 End Function ============================================================= ScriptEngineBuildVersion 函数 描述 返回使用的 Scripting 引擎的编译版本号。 语法 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 函数 描述 返回使用的 Scripting 引擎的主版本号。 语法 ScriptEngineMajorVersion 说明 返回值直接对应于所使用的 Script 程序语言中 DLL 文件包含的版本信息。 下面的示例利用 ScriptEngineMajorVersion 函数返回书写器的版本号:  Function GetScriptEngineInfo   Dim s   s = ""   '用必要的信息形成字符串。   s = ScriptEngine & " Version "   s = s & ScriptEngineMajorVersion & "."   s = s & ScriptEngineMinorVersion & "."   s = s & ScriptEngineBuildVersion   GetScriptEngineInfo = s  '返回结果。 End Function ============================================================= ScriptEngine 函数 描述 返回一个代表当前使用的 Script 程序语言的字符串。 语法 ScriptEngine 返回值 ScriptEngine 函数可返回下列字符串: 字符串 描述 VBScript 表明当前使用的 Script 引擎是 Microsoft(R) Visual Basic(R) Scripting Edition。 JScript 表明当前使用的 Script 引擎是 Microsoft JScript™。 VBA 表明当前使用的 Script 引擎是 Microsoft Visual Basic for Applications。 说明 下面的示例利用 ScriptEngine 函数返回描述所用书写语言的字符串: Function GetScriptEngineInfo   Dim s   s = ""   '用必要的信息形成字符串。   s = ScriptEngine & " Version "   s = s & ScriptEngineMajorVersion & "."   s = s & ScriptEngineMinorVersion & "."   s = s & ScriptEngineBuildVersion   GetScriptEngineInfo =  s  '返回结果。 End Function ============================================================= 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。 =============================================================

下载文档,方便阅读与编辑

文档的实际排版效果,会与网站的显示效果略有不同!!

需要 10 金币 [ 分享文档获得金币 ]
0 人已下载

下载文档

相关文档