Office学院 加入收藏
Office学院 Access Word Excel Powerpoint Wps Access Outlook Tags  
您现在的位置: Office学院 - Access - 如何以编程方式更新数据访问页链接

如何以编程方式更新数据访问页链接

添加记录: 如何以编程方式更新数 类别: Access 发布日期: 2007.06.08
适用于: 高级用户:要求具有高级编程、互操作性和多用户技能。

本文适用于 Microsoft Access 数据库 (.mdb) 和 Microsoft Access 项目 (.adp)。
概要 如果您熟悉 ODBC 表和 Microsoft Access 数据库,就会了解 ODBC 表不是按字面存储在 Access 数据库中。实际上,Access 数据库包含指向后端 ODBC 表的实际位置的链接。

Access 数据库中的数据访问页也是由链接表示。它们不是驻留在数据库中的对象,如表单、报表、查询等。数据访问页是 HTML 文件,它们存储在数据库之外的外部文件中。您在 Access 数据库中看到的数据访问页对象只是指向外部 HTML 文件的链接。

如果数据库或 HTML 文件被移到新的位置,则“数据库”窗口中的数据访问页链接将不再有效。开发人员在将数据库部署到其他计算机时可能会遇到此情况。这样,在部署数据库后,开发人员或最终用户必须将数据访问页重新链接到相应的 HTML 文件,才能使数据访问页正常工作。

本文提供了 Visual Basic for Applications (VBA) 示例代码,以阐释如何以编程方式更新 Microsoft Access 数据库中的数据访问页链接。 更多信息 在驱动器 C 的根目录中创建一个名为 Test 的新文件夹。 将 Samples 文件夹中的所有文件复制到 C:\Test 文件夹中。

注意:Samples 文件夹可能位于以下位置:
对于 Access 2002:<Office 路径>\Office10\
对于 Access 2003:<Office 路径>\Office11\ 使用 Access 打开 C:\Test\Northwind.mdb。 在插入菜单上,单击模块。 在模块中键入或粘贴以下 VBA 代码:Option Compare Database Option Explicit Sub subUpdatePageLinks() ' 'Update the links for each data access page. ' Dim aoDAP As AccessObject Dim strLocation As String Dim intPosition As Integer 'Retrieve the new path/location of the database. intPosition = InStrRev(CurrentDb.Name, "\") strLocation = Left$(CurrentDb.Name, intPosition) 'For each page... For Each aoDAP In Application.CurrentProject.AllDataAccessPages 'Select the page. DoCmd.SelectObject acDataAccessPage, aoDAP.Name, True 'Assign the new path/location to the page. aoDAP.FullName = strLocation & aoDAP.Name & ".htm" Next aoDAP MsgBox "Links Updated." End Sub 在调试菜单上,单击编译 Northwind。 在视图菜单上,单击立即窗口。 在“立即”窗口中键入 subUpdatePageLinks,然后按 Enter 键。在代码完成运行后,在消息框中单击确定。 在文件菜单上,单击“关闭并返回到 Microsoft Access”。 在“数据库”窗口中单击页面,右键单击任一现有页,然后在快捷菜单上单击属性。请注意,路径框显示了 HTML 文件的新位置。

此示例仅用于说明目的。如果您的数据库和 HTML 文件没有位于同一文件夹中,您必须使用其他方法在 VBA 代码中提供路径。注意:要在 .adp 文件内部使用这些代码,必须更改以下两个命令行: intPosition = ... strLocation = ... 这些命令行应引用 CurrentProject 对象而不是 CurrentDB 对象。例如: intPosition = InStrRev(CurrentProject.FullName, "\") strLocation = Left$(CurrentProject.FullName, intPosition) 参考有关解决数据访问页问题的更多信息,请单击帮助菜单上的 Microsoft Access 帮助,在“Office 助手”或“应答向导”中键入 数据访问页疑难解答,然后单击搜索查看返回的主题。

顶一下
上一篇:使用 SetOption 来禁用警告消息
下一篇:绑定到存储过程或函数的窗体或报表没有应用WHERE条件
Tags: Access Office 文件 报表 pda 窗口 菜单

相关信息
  • 使用 SetOption 来禁用警告消息
  • 使用Access时必须避免的特殊字符
  • 获得链接表路径
  • 用代码创建DSN
  • 用代码更改字段属性
  • [绝招]Access人士必读
  • 在查询与窗体列表中控制小数位
  • [LWWVB教程]设计表的精义(第2课)
  • 如何用Access开发局域网软件(5)
  • 如何用Access开发局域网软件(4)
  • 如何用Access开发局域网软件(3)
  • 我的一个编程的经验
  • 如何用Access开发局域网软件(2)
  • 如何用Access开发局域网软件(1)
  • 我的ACCESS处女作,销售单统计
  • 绑定到存储过程或函数的窗体或报表没有应用WHERE条件
  • 从Excel导入或链接数据后Excel工作表的列格式丢失或更改
  • Access2003如何解析 VBA引用
  • 如何在Access数据库相关表中编辑记录
  • [LWWVB教程]设计表的精义(第4课)
  • 设计“编码”的几个经验
  • 根据企业特点定义月度范围
  • 关于我们
  • [FAQ]去掉XP窗体右上角的帮助框
  • [FAQ]如何查看VBA源程序
  • 如何以编程方式将条件格式设置应用于所有窗体控件
  • 以编程方式创建“自动编号”字段并将其“新值”属性设置为“随机”
  • 如何在ADP和SQL Server2000 Desktop Edition中使用应用程序角色
  • 以程序化方式在 Access 报表中创建新列
  • 打开 ADP表或视图时出现排序规则冲突错误














  • 生日密码
    血型分析
    生肖分析



    制作单位 Office学院 © 版权所有


    联系我们 关于我们 友情链接 站点地图 免责声明


    Office学院,致力于打造专业的OFFICE应用交流平台。