VB函数详细讲解84个vb自带函数.docx
《VB函数详细讲解84个vb自带函数.docx》由会员分享,可在线阅读,更多相关《VB函数详细讲解84个vb自带函数.docx(47页珍藏版)》请在冰点文库上搜索。
VB函数详细讲解84个vb自带函数
数学函数
(1)Abs 函数
语法:
Abs(number)
返回一数值的绝对值。
参数 number 可以是任何数值表达式。
如果 number 的值为 Null,则返回 Null;如果其参数是没有初始值的变数,则返回0。
注解:
一个数值的绝对值就是将正负号去掉以后的值。
例如 Abs(-1) 和 Abs
(1) 的返回值都是1。
(2)Atn 函数
语法:
Atn(number)
该函数返回参数的「反正切」(arctangent) 值。
参数 number 可以是任何有效的数值表达式。
注解:
Atn 函数的参数 (number) 是直角三角形中构成直角两边的比值(正切函数值),其返回值则为相对应之底角的度数,以「弧度」为单位。
正切函数值 (number) 的算法为「对边除以邻边」。
返回值的围落在 pi/2 到 pi/2 的「弧度」之间。
「角度」与「弧度」的转换方法为:
将「角度」乘以 pi/180 即为「弧度」。
反过来将「弧度」乘以180/pi 便得「角度」。
(3)Cos 函数
语法:
Cos(number)
该函数返回一角度的 cosine(余弦函数)值。
参数 number 可以是任何有效的数值表达式,其值代表一个角度,以「弧度」为单位。
注解:
Cos 函数的参数表示角度,返回值为该角度两邻边的比值。
其比值的定义为「连接另一锐角的邻边除以连接直角的邻边」。
返回值的围在 -1 到 1 之间。
(4)Exp 函数
语法:
Exp(number)
该函数返回 e(自然对数之底数)的某次方。
参数 number 可以是任何的数值表达式。
注解:
如果 number 的值超过 709.782712893,会产生程式错误。
常数 e 的值大约是 2.718282。
(5)Log 函数
语法:
返回参数的自然对数值。
Log(number)
参数 number可以是任何的数值表达式,条件是参数值必须大于 0。
注解:
自然对数是以 e 为底数的对数。
常数 e 的值大约是 2.718282。
(6)Rnd 函数
语法:
Rnd[(number)]
返回一个随机数。
参数 number 可以是任何的数值表达式。
注解:
Rnd 函数返回的随机数围是:
介于 0 和 1 之间,可等于 0,但不等于 1。
number 的值会影响 Rnd 返回的随机数,见下表:
Number的取值
返回值
小于0
每次都是使用number当作随机结果。
大于0
随机序列中的下一个随机数。
等于0
最近一次产生过的随机数。
省略
随机序列中的下一个随机数。
给定一个随机种子后,便会产生一特定的随机序列,因为每调用一次 Rnd 函数,它就会使用先前调用时所产生的随机值当成新的随机种子以产生新的随机值。
在使用 Rnd 之前,最好先调用 Randomize 语句,但不要给任何参数,如此便会以系统的时间当作乱数种子来起始乱数产生器。
若想产生在某个围(非 0 到 1)的整数乱数值,可使用下列公式:
Int((upperbound-lowerbound+1)*Rnd+lowerbound)
上述公式中,upperbound 是随机围的上限,而 lowerbound 则是随机的下限。
附注:
若想得到重复的随机序列,可以在调用 Randomize 之前先调用 Rnd 并且传入一个小于 0 的参数值。
用同样的随机种子调用 Randomize 两次的话,并不会得到两次相同的乱数序列。
(7)Round 函数
语法:
Round(expression[,numdecimalplaces])
返回一个被四舍五入到某个小数位的数值。
Round 函数的语法包含以下的组成部分:
Expression为必须项。
要被四舍五入的数值表达式。
numdecimalplaces 为可选项。
此数字表示要四舍五入至小数下第几位。
如果省略,Round 函数将返回整数。
(8)Sgn 函数
语法:
Sgn(number)
返回一个整数代表参数的正负号。
参数 number 可以是任何的数值表达式。
Sgn 函数有下列返回值:
number
返回值
大于 0
1
等于 0
0
小于 0
-1
注解:
参数 number 的正负号决定了 Sgn 函数的返回值。
(9)Sin 函数
语法:
Sin(number)
返回参数的 sine(正弦函数)值。
参数 number 可以是任何的数值表达式,其值代表一个角度,以弧度为单位。
注解:
Sin 函数的参数值代表一个角度,其返回值为该角度之「另一锐角之邻边除以对边」的值。
返回值的围在 -1 到 1 之间。
(10)Sqr 函数
语法:
Sqr(number)
返回参数的平方根。
参数 number 可以是任何的数值表达式,只要参数值大于或等于 0 即可。
(11)Tan 函数
语法:
Tan(number)
返回参数的「正切」(tangent) 函数值。
参数 number 可以是任何的数值表达式,其值代表一个角度,以「弧度」为单位。
注解:
Tan 的参数值代表一个角度,其返回值为其「对边除以连接直角的邻边」的值。
字符串函数
(1)Asc 函数
语法:
Asc(string)
该函数返回字符串中第一个字母的 ANSI 码。
参数 string 是任何可用的字符串表达式。
若是 string 中没有包含任何字元,则会产生执行阶段错误。
注解:
AscB 函数是用来处理包含二进制的字符串, AscB 函数会返回第一个位元素,而非第一个字元的字元码。
AscW 函数则是为了使用 Unicode 字元码的 32 位元作业平台而设计的。
此函数会返回Unicode 字元码,而避免将 ANSI 码转换为 Unicode 码处理。
(2)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
(3)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 函数的语法并不相同。
(4)LCase 函数
语法:
LCase(string)
将 String转换成小写并返回
参数 string 可以是任何字符串表达式。
如果 string 所含为 Null,将返回 Null。
注解:
只有大写的字母会转成小写;所有小写字母和非字母字符保持不变。
(5)Left 函数
语法:
Left(string,length)
返回一字符串由左算起特定数量的字符。
Left 函数语法有下列的参数:
String参数,为函数欲执行的字符串表达式。
如果 string 所含为 Null,将返回 Null。
length 数值表达式,指出欲返回左方多少个字符。
如果为 0,返回零长度 ("")。
如果大于或等于string 的字符数,则返回整个字符串。
注解:
要知道 string 的字符数,请用 Len 函数。
附注:
LeftB 函数是使用在位元组字符串上。
所以此时 length 代表的是位元组数,而非字符数。
(6)Len 函数
语法:
Len(string|varname)
返回字符串字符的数目,或是返回储存一变数所需的位数。
Len 函数语法有下列几部份:
string 为任何正确的字符串表达式。
如果 string 所含为 Null,则返回 Null。
varname 为任何正确的变数名称。
如果 varname 所含为 Null,则返回 Null。
(7)LTrim、RTrim,与 Trim 函数
语法:
LTrim(string)
RTrim(string)
Trim(string)
将给定字符串的前头空白 (LTrim)、后面空白 (RTrim)、或前后空白 (Trim) 删除后返回。
参数 string 可以是任何字符串表达式。
如果 string 所含为 Null,则返回 Null。
(8)Mid 函数
语法:
Mid(string,start[,length])
从一个字符串的某一位置向后返回特定数量字符。
Mid 函数语法有下列的参数:
string 字符串表达式。
如果 string 所含为 Null,则返回 Null。
start 欲返回字符串在 string 之开头位置。
如果 start 超过 string 的围, Mid 则返回零长度字符串 ("")。
length 即返回的字符数。
如果省略或 length 超过可以返回的字符数,(包括 start 处的字元),那将返回从 start 到尾端的所有字符数。
下面的示例利用Mid函数返回字符串中从第四个字符开始的六个字符:
DimMyVar
MyVar=Mid("VB脚本isfun!
",4,6)'MyVar包含"Script"。
注意MidB函数与包含在字符串中的字节数据一起使用。
其参数不是指定字符数,而是字节数。
例:
M=4100
A1=Mid(M,1,1)A1=4
A2=Mid(M,2,2)A2=10
注解:
string 的字符数,可用 Len 函数。
(9)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 字符串的结尾停止执行。
这个字符串不是原始字符串从头到尾的复制。
(10)Right 函数
语法:
Right(string,length)
返回一字符串右边特定数量的字符。
Right 函数语法有下列的参数:
string 字符串表达式,为函数欲执行的字符串表达式。
如果 string 所含为 Null,则返回 Null。
length 数值表达式,指出欲返回右方多少字符。
如果为 0,返回零长度("")。
如果大于或等于string 的字元数,则返回整个字符串。
注解:
要知道 string 的字符数,可用 Len 函数。
(11)Str 函数
语法:
Str(number)
返回代表一数值的 Variant(String)。
注解:
必要的 number 参数为一 Long,其中可包含任何有效的数值表达式。
当一数字转成字符串时,总会在前头保留一空位来表示正负。
如果 number 为正,返回的字符串包含一前导空格暗示有一正号。
使用 Format 函数可将数值转成必要的格式,如日期、时间、货币或其他用户自定义格式。
与 Str不同的是,Format 函数不包含前导空格来放置 number 的正负号。
附注:
Str 函数只视句点 (.) 为有效的小数点。
如果使用不同的小数点(例如,国际
性的应用程序),可使用 CStr 将数字转成字符串。
(12)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
(13)String 函数
语法:
String(len,character)
创建含有len个字符的字符串。
String 函数语法有下列的参数:
len 为欲返回之字符串长度。
如果 len 的值为 Null,则返回 Null。
character 字符码 (代表某特定字元) 或字符串表达式(使用其第一个字元),将用来建构返回字符串的特定字符。
如果 character 的值为 Null,则返回 Null。
注解:
如果您设定 character 的数值大于255,String 会以下面式子将之转为正确的字符码:
characterMod256
(14)StrReverse 函数
语法:
StrReverse(string1)
将特定字符串的字元顺序颠倒后返回。
string1 参数是要颠倒的字符串。
如果 string1 的长度为零 (""),将返回一空字符串。
如果string1 是 Null,将会产生错误。
(15)UCase 函数
语法:
UCase(string)
将字符串转换成大写并返回。
参数 string 可以是任何字符串表达式。
如果 string 所含为 Null,则返回 Null。
注解:
只有小写的字母会转成大写;原本大写或非字母保持不变。
格式转换函数
(1)CBool 函数
语法:
CBool(expression)
该函数将参数expression转换为 Boolean型并返回。
参数可以是任何有效的表达式。
注解:
如果 expression 的结果为 0 ,则返回 False;否则将返回 True。
如果 expression 无法被计算成数值,将会产生执行阶段错误。
(2)CByte 函数
语法:
CByte(expression)
该函数将参数expression转换为 Byte 类型并返回。
参数 expression 可以是任何有效的表达式。
注解:
使用 CByte 来强制执行 Byte 运算,不管它是单精数、倍精数、或是整数,都可以正常执行。
使用 CByte 函数可以在任何语言的版本中,让任何一种数据转换至 Byte类型。
例如,不同的小数点分隔符号,会依据您系统的国别设定来做适当的确认。
而千分位分隔符号也一样。
若 expression 超出 Byte 资料型态允许的围,则将会显示错误。
(3)CCur 函数
语法:
CCur(expression)
该函数将参数expression转换为 Currency 类型并返回。
参数 expression 可以是任何有效的表达式。
注解:
可以使用 CCur 来强制执行 Currency 运算,以免被当作整数运算。
可以使用 CCur 函数以在任何语言的版本中,让任何一种数据换至 Currency 型。
例如,当使用CCur,不同的小数点分隔符号、千分位分隔符号,和不同的货币选项,会依据您系统的国别设定来做适当的确认。
(4)CDate 函数
语法:
CDate(date)
该函数将参数date转换为 Date 类型并返回。
参数 date 是任何有效的日期表达式。
注解:
可以使用 IsDate 函数来检查 date 是否可以被转换成日期或时间。
而 CDate 接受日期文字和时间文字以及日期/时间有效围的适当数值。
当转换一个数字成为日期时,是将整数部分转换成日期;任何数字中的小数部分,将转换为从午夜起算的时间。
CDate 是依据您系统上的国别设定来决定日期的格式。
若提供的格式为不可辨识的日期设定,则无法判断日、月、年的顺序。
另外,它若包含有星期的字符串,对于这样的完整日期格式也无法辨识。
(5)CDbl 函数
语法:
CDbl(expression)
该函数将参数expresion转换为 Double 类型并返回。
参数 expression 可以是任何有效的表达式。
注解:
可以使用 CDbl 或 CSng 来强制执行双精度或单精度运算以防止被当作货币或整数运算。
(6)Chr函数
语法:
Chr(charcode)
该函数返回指定参数所代表的字元。
参数 charcode 是一个数值,它是用来识别某个字符。
注解:
0 到 31 之间的数字与一般、非列印的 ASCII 码相同。
例如,Chr(10) 会返回换行(linefeed)字元。
(7)CInt 函数
语法:
CInt(expression)
该函数将参数expression转换为 Integer 类型并返回。
参数 expression 可以是任何有效的表达式。
注解:
可以使用 CInt 或 CLng 函数来强制执行整数运算,以免被当作货币、单精度、或双精度运算。
如果 expression 超出 Integer 型允许的围,则会发生错误。
附注:
CInt 函数与 Fix 及 Int 函数不同,Fix 和 Int 函数会将小数部分去除,然后返回整数值。
当小数部分恰好为 0.5 时, CInt 函数会将它转换成最接近的偶数值。
例如,0.5 转换成 0,而 1.5 转换成 2。
(8)CLng 函数
语法:
CLng(expression)
该函数将参数expression转换为 Long 类型并返回。
参数 expression 可以是任何有效的表达式。
注解:
可以使用 CInt 或 CLng 来强制执行整数运算,以免被当作货币、单精度、或双精度运算。
如果 expression 超出 Long型允许的围,则会发生错误。
附注:
CLng 函数与 Fix 及 Int 函数不同,Fix 和 Int 函数会将小数部分去除,然后返回整数值。
当小数部分恰好为 0.5 时, CLng 函数会将它转换成最接近的偶数值。
例如,0.5 转换成 0,1.5 转换成2。
(9)CSng 函数
语法:
CSng(expression)
该函数将参数expression转换成Single 类型并返回。
参数 expression 可以是任何有效的表达式。
注解:
使用 CDbl 或 CSng 来强制执行双精度或单精度运算,以防止被当作货币或整数运算。
如果 expression 超出 Single 类型允许的围,则会发生错误。
(10)CStr 函数
语法:
CStr(expression)
该函数将参数expression转换为 String 类型并返回。
参数 expression 可以是任何有效的表达式。
(11)FormatCurrency 函数
语法:
FormatCurrency(Expression[,NumDigitsAfterDecimal[,IncludeLeadingDigit
[,UseParensForNegativeNumbers[,GroupDigits]]]])
返回一个以系统控制台中所设定的货币符号格式化的货币值表达式。
FormatCurrency 函数的语法是由下列部分所组成.:
Expression 为必须项,表示欲被格式化的表达式。
NumDigitsAfterDecimal 为可选项,表示有多少小数位数。
默认值为 -1,表示使用系统地区设定值。
IncludeLeadingDigit 为可选项,以 Tristate 常数表示小数点前是否「显示前导零」。
参阅「设定值」部分。
UsePar