Access编程交流网
  • 设为首页|收藏本站|繁体中文|手机版
  •     
  • Access培训-Access开发平台-Access行业开发

  • 首页
  • 资讯
  • 技巧
  • 源码
  • 行业
  • 资源
  • 活动
  • 关于

技巧

ACCESS数据库

启动/设置/选项/背景

修复/压缩

安全/加密/解密

快捷键

版本升级/其它等

数据表

命名方式/设计规范

表设计

查询

Sql语言基础

选择查询

更新查询

删除查询

追加查询

生成表查询

交叉表查询

SQL特定查询

查询参数

查询综合应用

界面/窗体/控件

标签

文本框

命令按钮

组合框/列表框

选项组/复选框/选项按钮

选项卡

子窗体

窗体本身/综合应用

其它

报表打印

报表设计

高级报表

模块/函数/VBA/API/系统

VBA基础

内置函数

调试/跟踪/Debug

模块/类模块

API/COM/系统相关

字符数字日期

网络通信游戏

加密解密安全

文件处理

经典算法

宏/菜单/工具栏/功能区

宏/脚本

菜单/工具栏

功能区/Ribbon

图表/图形/图像/多媒体

图表

图形/图像

音频

视频/动画

DAO/链接表/ADO/ADP

DAO/链接表/ODBC

ADO/RDO

ADP

ActiveX/第三方控件/插件

Treeview树控件

ListView列表控件

Toolbar工具栏控件

微软其它控件

Dbi-Tech

CodeJock

Grid++Report

FastReport

ComponentOne

加载项/插件/Addin

OFFICE集成/导入导出/交互

Excel导入导出/交互

Word导入导出/交互

PPT交互

Outlook控制/邮件

Text文本文件/INI/CSV

PDF/SWF/XML格式

CAD格式

Sharepoint/其它Office

SqlServer/其它数据库

表

视图

存储过程/触发器

函数

用户/权限/安全

调试/维护

SqlServer其它/综合

发布/打包/文档/帮助

开发版/运行时

打包/发布/部署

开发文档/帮助制作

Access完整行业系统

采购管理系统

销售管理系统

仓库管理系统

人力资源管理HRM

CRM管理系统

MRP/ERP管理系统

BRP/流程优化

其它管理系统

心得/经验/绝招
其它/杂项
Excel技巧

Excel应用与操作

Excel开发编程

Word技巧

Word应用与操作

Word开发编程

Outlook技巧

Outlook应用与操作

Outlook开发编程

热门文章

  • 新手来看:在报表中不显示重..
  • 在Access中使用自动化..
  • 报表奇偶分页打印
  • 如何控制每页打印的记录数?
  • 移除报表预览窗口的Min/..
  • 懒人有懒计——浅谈自动报表

最新文章

  • Access中窗体或者报表..
  • Access报表文本框按字..
  • Access报表打印设置
  • Access报表补空行代码
  • 懒人有懒计——浅谈自动报表
  • Access使用excel..

联系方式

Access交流网(免费Access交流)

QQ:18449932 

网  址:www.access-cn.com

当前位置:首页 > 技巧 > 报表打印
报表打印

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

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
            Loop
        End With
    End If

fOpenRemoteReport_Exit:
    On Error Resume Next
    objaccess.Quit
    Set objaccess = Nothing
    Exit Function

fOpenRemoteReport_Err:
    fOpenRemoteReport = False
    Select Case Err.Number
        Case 7866:
            ' mdb 已经被用独占方式打开
            MsgBox "该数据库:" & strMDB & _
                vbCrLf & "已经被用独占方式打开!" & vbCrLf _
                & vbCrLf & "请重新用共享方式打开,再试一次!", _
                vbExclamation + vbOKOnly, "不能打开数据库"
        Case 2103:
            ' 报表不存在
            MsgBox "在这个" & strMDB & "数据库中不存在该报表:" & strReport & _
                        vbCrLf & vbCrLf , _
                        vbExclamation + vbOKOnly, "报表不存在"
        Case 7952:
            ' 用户关闭了这个 mdb
            fOpenRemoteReport = True
        Case Else:
            MsgBox "错误#: " & Err.Number & vbCrLf & Err.Description, _
                    vbCritical + vbOKOnly, "运行时错误"
    End Select
    Resume fOpenRemoteReport_Exit
End Function

发布人:Dev Ashi…-The access Web  
分享到:
点击次数:  更新时间:2005-01-29 10:48:44  【打印此页】  【关闭】
上一条:求教 急急急  下一条:如何在报表中使用自定义尺寸的纸张



相关文章

  • • Access中窗体或者报表页眉和页面页眉的区别,窗体页脚和页面页脚的区别
  • • Access报表文本框按字数同步缩放
  • • Access报表打印设置
  • • Access报表补空行代码
  • • 懒人有懒计——浅谈自动报表
  • • Access使用excel输出复杂报表
  • • 报表每页打印到一定行数自动分页
  • • 解决Access在页面设置中设置边距无法保存的问题

热门文章

  • [2003-12-06] 创建完美报表access数据库
  • [2005-01-29] 怎样打开外部数据库中的报表access数据库
  • [2003-12-06] 如何制作复杂报表——利用Excel输出复杂报表access数据库
  • [2004-12-31] 高手请指教!access数据库
  • [2003-12-12] ACCESS数据库中的中文报表制作access数据库
  • [2003-12-06] 获取打印机纸张信息access数据库

热门产品

公司动态|在线留言|在线反馈|友情链接|会员中心|站内搜索|网站地图

中山市天鸣科技发展有限公司 版权所有 1999-2023 粤ICP备10043721号

QQ:18449932

Access应用 Access培训 Access开发 Access平台

access|数据库|access下载|access教程|access视频|access软件

Powered by MetInfo 5.3.12 ©2008-2025  www.metinfo.cn