ACCESS常用函数

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.转换

所谓转换就是从一种格式转换为另一种格式,比如数字转换成字符串,字符串转换成数字等。在Access2007的帮助中该类函数共有16个,这里只介绍一些常用的函数,其它函数的使用方法请查看联机帮助文档。

l数字转字符串函数Str(数字)

Str()函数是将一个数值转换成字符串,例:Str(9999.863),其结果是“9999.863”,Str(-9999.863),其结果是“-9999.863”如果含有字母,系统将出现错误。

当一数字转成字符串时,总会在前头保留一空位来表示正负。如果“数字”为正,返回的字符串包含一前导空格暗示有一正号。

可以使用Format函数可将数值转成必要的格式,如日期、时间、货币或其他用户自定义格式。与Str不同的是,Format函数不包含前导空格来放置“数字”的正负号。

注意:Str函数只视句点(.)为有效的小数点。如果使用不同的小数点(例如,国际性的应用程序),可使用CStr将数字转成字符串。

l字符串转数字函数Val(字符串)

Val函数是将一个数值型字符串转换成数值,例:Val(“9999.863”),其结果是9999.863,Val函数,在它不能识别为数字的第一个字符上,停止读入字符串。那些被认为是数值的一部分的符号和字符,例如美圆号与逗号,都不能被识别。但是函数可以识别进位制符号&O(八进制)和&H(十六进制)。空白、制表符和换行符都从参数中被去掉。

下面的例子返回值为1615198:

Val("1615198th Street N.E.")

在下面的代码中,Val为所示的十六进制数值返回十进制数值-1。

Val("&HFFFF")

如果字符串的首位是字母,其结果为0。

l空值处理函数Nz(表达式)

空值处理函数Nz是专门用来处理表达式空值的,如果该表达式是值为Null时,可以使用Nz函数返回零、零长度字符串(零长度字符串:不含字符的字符串。可以使用零长度字符串来表明您知道该字段没有值。输入零长度字符串的方法是键入两个彼此之间没有空格的双引号("")。如果表达式不为空,则原样返回。

这个函数十非常有用的,因为在Access中空值是不被处理的,比如介绍逻辑运算符时就已经有这类情况发生,表达式1or表达式2,只要有一个为空,结果必定为空,这就会引起逻辑判断上的错误,不能真实反映其判断结果,再比如在计算两个表达式的值时,也会出现异常,假设在VBA中有下面一段程序:

A=18.69

B=Null

C=A+B

其结果C等于Null,这不是想要的结果,如改成C=Nz(A)+Nz(B),其结果为18.69。

2.日期函数

在Access2007的帮助中该类函数共有19个,但笔者认为应该是20个,其中Day()函数归到转换函数里,也可以归到日期函数中,表示取日期数据月的天数。

l当前系统日期函数Date()

返回当前系统的日期,在任何可以使用表达式的地方都可以使用Date函数。例如,您可以如下设置窗体上文本框的“控件来源”属性:=Date(),在窗体视图中打开窗体时,该文本框会显示当前系统日期。

l当前系统日期和时间函数Now()

返回当前系统的日期和时间,在VBA中可以这样使用该函数。例:

Dim今天

今天=Now()

在Access2007中,可以使用中文来定义变量,有关变量在以后的章节中介绍。

l当前系统时间函数Time()

l返回添加了指定时间间隔的日期DateAdd()

其语法为:DateAdd(时间间隔,间隔数,日期)

时间间隔表示间隔按年还是月或者其它,间隔数表示增加的数量,也可以是负数,如果是负数,则返回过去的日期。

该函数带三个参数,每个参数都是必选的,如表1所示。例如获得3个月前的日期,就可以使用该函数,下面举例:

设置窗体上文本框的“控件来源”属性:=DateAdd("m",-3,Date()),在窗体视图中打开窗体时,该文本框会显示前3个月的日期。

的年数),则会出错。

如果间隔数不是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所示。

l取整函数Int()

l四舍五入函数Round()

6.邮件函数

相关文档
最新文档