设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 868|回复: 2
打印 上一主题 下一主题

[其它] 请问高手!!如何编写自定义函数??我是新手,请多指教!!谢谢!!

[复制链接]
跳转到指定楼层
1#
发表于 2005-6-14 23:45:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何在数据库中编写自定义函数??过程是怎么做的???[em04]
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2005-6-14 23:57:00 | 只看该作者
如果要所有的项目都可以引用你这个函数那么在公共模块中写 (代码编辑器里,插入-模块)Function 语句示例

该示例使用 Function 语句来声明 Function 过程的名称、参数、以及构成 Function 过程主体的代码。最后一个例子中使用了确定类型的、初始化的 Optional 参数。'下面的用户自定义函数返回

'它的参数的平方根。

Function CalculateSquareRoot(NumberArg As Double) As Double

    If NumberArg < 0 Then    '评估参数。

        Exit Function    '退出调用过程。

    Else

        CalculateSquareRoot = Sqr(NumberArg)    '返回平方根。

    End If

End Function使用 ParamArray 关键字可以使函数接收数目可变的参数。在下面的定义中,FirstArg 是按值传递的。Function CalcSum(ByVal FirstArg As Integer, ParamArray OtherArgs())

Dim ReturnValue

'如果用如下代码调用该函数:

ReturnValue = CalcSum(4, 3 ,2 ,1)

'则局部变量被赋予以下值:FirstArg = 4,

'OtherArgs(1) = 3,OtherArgs(2) = 2,等等。

'假设缺省数组下界 = 1。Optional 参数可以带缺省值,可以是除 Variant 之外的任何类型。'如果函数的参数定义如下:

Function MyFunc(MyStr As String, Optional MyArg1 As _ Integer = 5, Optional MyArg2 = "Dolly")

Dim RetVal

'则可用如下代码调用该函数:

RetVal = MyFunc("Hello", 2, "World")    '提供了所有 3 个参数。

RetVal = MyFunc("Test", , 5)    '省略了参数 2。

'参数 1 和参数 3 使用了命名的参数。

RetVal = MyFunc(MyStr:="Hello ", MyArg1:=7)
3#
 楼主| 发表于 2005-6-15 00:09:00 | 只看该作者
[em01]多谢高手指点!!谢过了!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-15 12:46 , Processed in 0.078073 second(s), 26 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表