[access报表]怎样打开外部数据库中的报表-朱亦文
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-报表


[access报表]怎样打开外部数据库中的报表

发表时间:2004/11/11 评论(1) 浏览(10799)  评论 | 加入收藏 | 复制
   
摘 要:怎样打开外部数据库中的报表? 通过使用自动化,并利用ACCESS提供的OpenCurrentDatabase方法来实现。
正 文:
(问):怎样通过自动化功能打开外部数据库中的报表?

 

(答):Access 97 以后的版本给了我们一个新的方法: OpenCurrentDatabase, 下列代码将使用这种方法来实现打开外部数据库中的报表。

Private Declare Function apiSetForegroundWindow Lib "user32" _
            Alias "SetForegroundWindow" _
            (ByVal hwnd As Long) _
            As Long

 

Private Declare Function apiShowWindow Lib "user32" _
            Alias "ShowWindow" _
            (ByVal hwnd As Long, _
            ByVal nCmdShow As Long) _
            As Long

Private Const SW_MAXIMIZE = 3
Private Const SW_NORMAL = 1

Function fOpenRemoteReport(strMDB As String, strReport As String, _
            Optional intView As Variant) _
            As Boolean
' strMDB: 外部数据库名称(含路径)
' strReport: 报表名称
' intView: 报表的打开方式

    Dim objAccess As Access.Application
    Dim lngRet As Long

    On Error GoTo fOpenRemoteReport_Err

    If IsMissing(intView) Then intView = acViewPreview

    If Len(Dir(strMDB)) > 0 Then
        Set objAccess = New Access.Application
        With objAccess
            lngRet = apiSetForegroundWindow(.hWndAccessApp)
            lngRet = apiShowWindow(.hWndAccessApp, SW_NORMAL)
            ' 第一次调用ShowWindow似乎不做任何事情
            lngRet = apiShowWindow(.hWndAccessApp, SW_NORMAL)
            .OpenCurrentDatabase strMDB
            .DoCmd.OpenReport strReport, intView
            Do While Len(.CurrentDb.Name) > 0
                DoEvents
  &n

Access软件网交流QQ群(群号:198465573)
 
 相关文章
[access报表]怎样打开外部数据库中的报表  【朱亦文(译)   2004/11/11】
引用外部数据库的窗体  【cuxun  2007/10/18】
[access报表]打开外部数据库中的报表  【竹笛  2007/10/18】
更改外部数据库表中的字段名  【十段  2008/3/22】
外部数据的使用--如何导入一个SYBASE数据库中的表   【UMVSoft整理  2008/8/15】
VBA调用access自带的获取外部数据功能  【宏鹏  2013/2/20】
【Access示例】获取外部数据库名与表名  【缪炜  2014/5/16】
【Access示例】获取外部数据库的表中的数据  【缪炜  2014/5/30】
常见问答
技术分类
相关资源
文章搜索
关于作者

朱亦文

文章分类

文章存档

友情链接