Access常用函数举例
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
常用函数举例
常用函数举例1. 转换
所谓转换就是从一种格式转换为另一种格式,比如数字转换成字符串,字符串转换成数字等。
在Access 2007的帮助中该类函数共有16个,这里只介绍一些常用的函数,其它函数的使用方法请查看联机帮助文档。
l 数字转字符串函数Str(数字)
Str()函数是将一个数值转换成字符串,例:Str(9999.863),其结果是
“ 9999.863”,Str(-9999.863),其结果是“-9999.863”如果含有字母,系统将出现错误。
当一数字转成字符串时,总会在前头保留一空位来表示正负。
如果“数字”为正,返回的字符串包含一前导空格暗示有一正号。
可以使用 Format 函数可将数值转成必要的格式,如日期、时间、货币或其他用户自定义格式。
与 Str 不同的是,Format 函数不包含前导空格来放置“数字”的正负号。
注意:Str 函数只视句点 (.) 为有效的小数点。
如果使用不同的小数点(例如,国际性的应用程序),可使用 CStr 将数字转成字符串。
l 字符串转数字函数Val(字符串)
Val函数是将一个数值型字符串转换成数值,例:Va l(“9999.863”),其结果是9999.863,Val 函数,在它不能识别为数字的第一个字符上,停止读入字符串。
那些被认为是数值的一部分的符号和字符,例如美圆号与逗号,都不能被识
别。
但是函数可以识别进位制符号 &O(八进制)和 &H(十六进制)。
空白、制表符和换行符都从参数中被去掉。
下面的例子返回值为 1615198:
Val(" 1615 198th Street N.E.")在下面的代码中,Val 为所示的十六进制数值返回十进制数值 -1。
Val("&HFFFF")如果字符串的首位是字母,其结果为0。
l 空值处理函数Nz(表达式)
空值处理函数Nz是专门用来处理表达式空值的,如果该表达式是值为Null 时,可以使用 Nz 函数返回零、零长度字符串(零长度字符串:不含字符的字符串。
可以使用零长度字符串来表明您知道该字段没有值。
输入零长度字符串的方法是键入两个彼此之间没有空格的双引号 ("")。
如果表达式不为空,则原样返回。
这个函数十非常有用的,因为在Access中空值是不被处理的,比如介绍逻辑运算符时就已经有这类情况发生,表达式1 or 表达式2,只要有一个为空,结果必定为空,这就会引起逻辑判断上的错误,不能真实反映其判断结果,再比如在计算两个表达式的值时,也会出现异常,假设在VBA中有下面一段程序:
A=18.69
B=Null
C=A+B
其结果C等于Null,这不是想要的结果,如改成C=Nz(A)+Nz(B),其结果为18.69。
2. 日期函数
在Access 2007的帮助中该类函数共有19个,但笔者认为应该是20个,其中Day()函数归到转换函数里,也可以归到日期函数中,表示取日期数据月的天数。
l 当前系统日期函数Date()
返回当前系统的日期,在任何可以使用表达式的地方都可以使用 Date 函数。
例如,您可以如下设置窗体上文本框的“控件来源”属性:=Date(),在窗体视图中打开窗体时,该文本框会显示当前系统日期。
l 当前系统日期和时间函数Now()
返回当前系统的日期和时间,在VBA中可以这样使用该函数。
例:
Dim 今天
今天 = Now()
在Access 2007中,可以使用中文来定义变量,有关变量在以后的章节中介绍。
l 当前系统时间函数Time()
l 返回添加了指定时间间隔的日期DateAdd()
其语法为:DateAdd(时间间隔,间隔数,日期)
时间间隔表示间隔按年还是月或者其它,间隔数表示增加的数量,也可以是负数,如果是负数,则返回过去的日期。
该函数带三个参数,每个参数都是必选的,如表1所示。
例如获得3个月前的日期,就可以使用该函数,下面举例:
设置窗体上文本框的“控件来源”属性:=DateAdd("m",-3,Date()),在窗体视图中打开窗体时,该文本框会显示前3个月的日期。
表1 DateAdd函数参数说明
时间间隔参数是系统规定好的符号,分别代表不同的含义,具体含义如表2所示。
表2时间间隔符号的含义
注意:使用该参数时要加引号,如果计算后的日期在 100 年前(即减去的年数大于 Date 中的年数),则会出错。
如果间隔数不是 Long (Long 数据类型:存储大型整数的基本数据类型。
Long 变量存储为 32 位数的值,范围介于 -2,147,483,648 到 2,147,483,647 之间。
)类型的值,则会在求值前将其四舍五入为最近的整数。
l 返回两个指定的日期之间的时间间隔数DateDiff()
3. 财务函数
l 余额递减法求折旧函数DDB()
其语法格式:DDB(初始成本, 剩余价值, 折旧年限, 期间,倍数),其中倍数是可选项,默认值等于2,如果省略该参数,默认为双倍余额递减法求折旧。
例:使用双倍余额递减法求折旧求资产原值等于5000,5年后剩余价值等于50第一年的折旧,其函数的写法为:DDB(5000,50,5,1),结果返回2000,第二年的折旧算法:DDB(5000,50,5,2),结果返回1200。
4. 域聚合函数
l 查找特定值函数DLookup()
该函数从一个记录集中取某一字段的值,例:假设一个用户表中含有帐户名、密码、真实姓名三个字段,要判断输入的帐号和密码正确否,如果正确,表示合法用户,不正确就是非法用户,就可以利用该函数来判断。
例:
If Nz(DLookup("帐号", "用户", "帐号='wang' and 密码='123'")) <> "" Then
MsgBox ("合法用户")
Else
MsgBox ("非法用户")
End If
这里用了VBA编程的方法对该函数进行了举例。
l 求和函数DSum()
例:计算“销售”表中“销售员”为“张三”的销售总额
=Dsum("销售金额", "销售", "销售员= '张三'")
l 求平均值函数DAvg()
l 求记录数函数DCount()
域聚合函数常用于对一个记录集中进行查找、求平均、求和等操作,其语法的基本格式为:
函数名(“字段名”,“记录集名”,“条件”)
域聚合函数的基本用法参数如表3所示。
表3域聚合函数的基本用法参数说明
5. 数学函数
l 取整函数Int()
l 四舍五入函数Round()
6. 邮件函数
l Msgbox()
显示一条消息对话框,等待用户单击按钮,然后返回一个指示用户所单击按钮的 Integer 值。
语法:
MsgBox(prompt [, buttons ] [, title ] [, helpfile ] [, context ] )
MsgBox 函数的语法包含以下参数(参数:为操作、事件、方法、属性、函数或过程提供信息的值。
):
其中[]表示是可选参数,其参数如表4所示。
表4MsgBox函数参数说明
buttons 参数的设置如表5所示:表5Buttons 参数的设置
第一组值 (0–5) 说明了对话框中所显示按钮的数目和类型;第二组值(16、32、48、64)说明图标样式;第三组值(0、256、512)决定哪个按钮是默认值;第四组值(0、4096)决定消息框的模态。
当添加数字以创建 buttons 参数的最终值时,每组值中只能使用一个数字。