Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-模块/函数/VBA

access 如何调用 Excel 函数

时 间:2007-10-30 08:22:16
作 者:褚玉春   ID:11  城市:上海  QQ:3002789054点击这里给麥田发消息
摘 要:Access 如何调用 Excel 函数
正 文:

来源:access911.net
作者:ec
2003-7-1 8:46:49

问题:
Access 如何调用 Excel 函数

回答:

Excel 有一些 Access 没有的函数,例如,统计函数和加载项函数。通过使用“自动化”功能,可以在 Access 中使用这些 Excel 函数。为此,先请设置对 Microsoft Excel 对象库的引用。

要设置对 Microsoft Excel 对象库的引用,请执行下列步骤:
在 Access 中,按 ALT+F11 切换到 Visual Basic 编辑器。
在工具菜单上,单击引用。
在引用框中,单击 Microsoft Excel 9.0 Object Library 复选框,然后单击确定。
设置引用后,可以使用“对象浏览器”查看所有 Excel 的对象、属性和方法,包括通过 Application 对象可用的函数。

以下两个示例程序中使用了 Microsoft Excel 的统计函数。

备注:通过“自动化”功能打开 Excel 之后,Excel 不自动关闭。以下示例程序中使用 Quit 方法关闭 Excel。

示例 1


以下函数使用“自动化”功能调用 Excel 的 Median () 函数。数字组的一半在中值之下,而另一半则在中值之上。 Sub xlMedian()
Dim objExcel As Excel.Application
Set objExcel = CreateObject("Excel.Application")
MsgBox objExcel.Application.Median(1, 2, 5, 8, 12, 13)
objExcel.Quit
Set objExcel = Nothing
End Sub


该函数在消息框中显示 6.5。
示例 2


以下函数使用“自动化”功能调用 Excel 的 ChiInv () 函数,该函数返回卡方分布的倒数或单尾概率。 Sub xlChiInv()
Dim objExcel As Excel.Application
Set objExcel = CreateObject("Excel.Application")
MsgBox objExcel.Application.ChiInv(0.05, 10)
objExcel.Quit
Set objExcel = Nothing
End Sub


该函数在消息框中显示 18.3070290368475。

通过直接调用 Excel 引用可以简化代码: Sub xlChiInv()
MsgBox Excel.Application.ChiInv(0.05, 10)
End Sub


备注: 使用该语法时,Excel 将保留在内存中,直到重置代码或关闭数据库。
使用加载项


Excel 也使用加载项。这些程序包含自定义函数和命令。如果需要使用包含在加载项程序中的函数,请先打开加载项。以下示例使用 LCM (Least Common Multiple) 函数: Sub xlAddin()
Dim objExcel As Excel.Application
Set objExcel = CreateObject("Excel.Application")

' Opens the add-in, which is in the Analysis folder of the
' Excel Library Directory.
objExcel.workbooks.Open (objExcel.Application.librarypath & _
"\Analysis\atpvbaen.xla")

' Runs the AutoOpen macro in the add-in
objExcel.workbooks("atpvbaen.xla").RunAutoMacros (xlAutoOpen)
MsgBox objExcel.Application.Run("atpvbaen.xla!lcm", 5, 2)
objExcel.Quit
Set objExcel = Nothing
End Sub



该函数在消息框中显示 10。

Access软件网QQ交流群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助