分享

第6讲 函数

 uslimi 2009-12-09

作者:http://hi.baidu.com/landmao   
6.1 函数概述
函数(function)是能完成特定任务的相关语句和表达式的集合。当函数执行完毕时,它会向调用它的语句返回一个值。如果不显示指定函数的返回值类型,就返回缺省的数据类型值。

1.Sub函数
      Sub函数是以Sub…End Sub语句封闭起来的程序块。每当该函数被调用时,就会将存放在函数块内的语句执行一次。执行中若碰到End Sub 、Exit Sub或Return便离开函数,回到调用此函数的下一个语句继续望下执行。编写程序时,在模块、对象类模块和结构中定义Sub函数。模块内的Sub函数都默认为Public,表示可以从应用程序任何位置调用此Sub函数。除了Main函数外,其他函数是在被调用才执行。
Sub函数定义的语法如下:
[Private∣Public]Sub函数名称([参数类表])
[程序块]
[Exit Sub]
End Sub
Sub函数是以Public Sub或Private Sub开头,最后以End Sub结束。当执行到End Sub后即返回紧接再原调用处的下一个语句继续往下执行。若中途要离开函数,可使用Exit Sub语句。
调用Sub函数的语法有下列两种方式:
语法1:Call函数名称([参数列表])
语法2:函数名称([参数列表])
调用程序与被调用程序之间若无数据传递,参数列表可省略(即不传任何参数);若不省略,参数列表的数目可以是一个或一个以上的参数。

2.Function函数
除系统提供的内置函数外,还提供了日期、时间、字符串等函数,另外还可以使用Function…End Function函数来编写属于自己的Function函数。
Sub函数和Function函数两者都可以做参数传递,但两者使用上的主要差异是Sub函数没有返回值,Function函数则有返回值。有关Function函数的语法如下:
[Public∣Private] Function函数名称([参数列表]) [As数据类型]
[语句块]
函数名=表达式
[Exit Function]
或(Return表达式)
End Function
6.2     测试函数
IsNumeric(x)                是否为数字, 返回Boolean结果,True or False
IsDate(x)                   是否是日期, 返回Boolean结果,True or False
IsEmpty(x)               是否为Empty, 返回Boolean结果,True or False
IsArray(x)                  指出变量是否为一个数组。
IsError(expression)           指出表达式是否为一个错误值
IsNull(expression)            指出表达式是否不包含任何有效数据 (Null)。
IsObject(identifier)           指出标识符是否表示对象变量

6.3 数学函数
Sin(X)、Cos(X)、Tan(X)、Atan(x)     三角函数,单位为弧度
Log(x) 返回x的自然对数
Exp(x)返回 ex
Abs(x) 返回绝对值
Int(number)、Fix(number) 都返回参数的整数部分,区别:Int 将 -8.4 转换成 -9,而 Fix 将-8.4 转换成 -8
Sgn(number) 返回一个 Variant (Integer),指出参数的正负号
Sqr(number) 返回一个 Double,指定参数的平方根
VarType(varname) 返回一个 Integer,指出变量的子类型
Rnd(x)返回0-1之间的单精度数据,x为随机种子

6.4 字符串函数
Trim(string)             去掉string左右两端空白
Ltrim(string)            去掉string左端空白
Rtrim(string)            去掉string右端空白
Len(string)              计算string长度
Left(string, x)            取string左段x个字符组成的字符串
Right(string, x)           取string右段x个字符组成的字符串
Mid(string, start,x)        取string从start位开始的x个字符组成的字符串
Ucase(string)             转换为大写
Lcase(string)             转换为小写
Space(x)                返回x个空白的字符串
Asc(string)              返回一个 integer,代表字符串中首字母的字符代码
Chr(charcode)           返回 string,其中包含有与指定的字符代码相关的字符

6.5 转换函数
CBool(expression)                           转换为Boolean型
CByte(expression)                            转换为Byte型
CCur(expression)                            转换为Currency型
CDate(expression)                            转换为Date型
CDbl(expression)                            转换为Double型
CDec(expression)                            转换为Decemal型
CInt(expression)                            转换为Integer型
CLng(expression)                            转换为Long型
CSng(expression)                            转换为Single型
CStr(expression)                            转换为String型
CVar(expression)                            转换为Variant型
Val(string)                                    转换为数据型
Str(number)                                   转换为String

6.6 日期函数

日期函数
名 称 说       明
IsDate 语法:IsDate(表达式);功能:若该表达式为日期类型变量时,返回True;否则返回False。范例:check=IsDate(“2/21/1969”) ‘返回True;check=IsDate(”Hello”)’返回False
Today 语法:Today;功能:设置或返回目前系统的日期
Now 语法:Now;功能:返回目前系统的日期与时间
Year 语法:Year(datetime);功能:返回公元年。范例:n=Year(”2/12/1999”) ‘n=1999
Month 语法:Month(datetime);功能:返回1~12月份。范例n=Month(“5/12/1969”)     ‘n=5
Day 语法:Day(datetime);功能:返回日期。范例:n= Microsoft.VisualBasic.Day(“2/21/1969”)     ‘n=21
MonthName 语法:MonthName(月份);功能:返回相对应的月份名称。范例:str= MonthName(3) ‘str=三月
WeekDay 语法:WeekDay(datetime);功能:返回星期几,其值为1~7。若返回1,表示星期日;返回2表示星期一……依次类推。范例:n=Weekday(”3/14/2003”) ‘n=6 表示这天为星期五
WeekdayName 语法:WeekdayName(n);功能:返回一星期中的第几天。n为1则返回星期日;n为2返回星期一……依次类推。范例:str=WeekdayName(5) ‘str=星期四

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多