在 Microsoft Access 项目 (Microsoft Access 项目:与 Microsoft SQL Server 数据库连接且用于创建客户/服务器应用程序的 Access 文件。项目文件中不包含任何数据或基于数据定义的对象(如表或视图)。) (.adp 文件) 中,可通过使用密码(您和其他用户必须输入该密码才能在“Visual Basic 编辑器” (Visual Basic 编辑器:一种环境,用于编写新的 Visual Basic for Applications 代码和过程,并编辑已有的代码和过程。Visual Basic 编辑器包括完整的调试工具集,用于查找代码中的语法、运行时和逻辑问题。)中查看或编辑 VBA 代码)保护 Visual Basic for Applications (Visual Basic for Applications (VBA):Microsoft Visual Basic 的宏语言版本,用于编写基于 Microsoft Windows 的应用程序,内置于多个 Microsoft 程序中。) (VBA) 代码,来帮助保护所有模块以及窗体和报表背后的模块。在设置了密码后,每次会话 (会话:由 Microsoft Jet 数据库引擎完成的一系列操作,在用户登录到计算机时开始,在用户注销时结束。一个会话期间进行的所有操作形成了一个事务范围,并且这些操作受制于用户的登录权限。)都需输入一次该密码。不仅查看和编辑需要密码,剪切、复制、粘贴、导出及删除任何模块都需要密码。但请注意,以这种方式帮助保护 VBA 代码并不能阻止您及其他用户运行已有的 VBA 代码。
关于 .ade 文件
如果 Microsoft Access 项目中包含 Visual Basic for Applications (VBA) 代码,则在将 Access 项目另存为 .ade (ADE 文件:所有模块都已编译且所有可编辑的源代码均已删除的 Microsoft Access 项目 (.adp) 文件。) 文件时会编译所有模块,删除所有可编辑的源代码,并压缩目标 Access 项目文件。VBA 代码将继续运行,但无法再查看或编辑这些代码。
Access 项目将可继续正常运行,也就是说,仍然可以更新数据及运行报表。另外,Access 项目的大小将会由于代码的删除而减小,因此内存使用得以优化,性能得以改进。
将 Access 项目文件另存为 .ade 文件不会阻止更改项目的设计。不过,要注意以下几点:
将禁用修改或创建窗体、报表或模块的用户界面。
“VBA 引用”对话框将不允许添加、删除或更改对对象库或数据库的引用。
源代码将不可用。
窗体、报表或模块将无法使用导入和导出命令。但是,可以将表、数据访问页 (数据访问页:旨在通过 Internet 或 Intranet 查看和处理数据的网页。其数据通常存储在 Access 数据库中。)、视图、存储过程、数据库图表和宏从非 ADE 项目中导入或将这些对象导出到非 ADE 项目中。
需要修改窗体、报表或模块的设计时应考虑的事项
务必保存一份原始 Access 项目文件的副本。如果要修改已经另存为 .ade (ADE 文件:所有模块都已编译且所有可编辑的源代码均已删除的 Microsoft Access 项目 (.adp) 文件。) 文件的 Access 项目文件中的窗体、报表或模块的设计,必须修改原始的 Access 项目,然后重新将其另存为 .ade 文件。
在将来版本的 Access 中不能打开、转换或运行 Access 2002 或更高版本 .ade 文件中的代码。唯一可用于将 Access 2002 或更高版本 .ade 文件转换为将来版本的方法是打开创建 .ade 文件所用的原始 Access 项目,将它转换为 Access 的更高版本,然后将转换后的 Access 项目文件另存为 .ade 文件。
将 Access 项目文件另存为 .ade 文件前应考虑的事项
下面一些限制禁止将 Access 项目保存为 .ade (ADE 文件:所有模块都已编译且所有可编辑的源代码均已删除的 Microsoft Access 项目 (.adp) 文件。) 文件:
如果定义了密码,则必须对 VBA 代码具有密码访问权限。
如果 Access 项目引用了其他 Access 项目或加载项 (加载项:为 Microsoft Office 提供自定义命令或自定义功能的补充程序。),则必须将引用链中所有的 Access 项目或加载项另存为 .ade 或 .mde (MDE 文件:Microsoft Access 数据库 (.mdb) 文件,其中的模块都已编译,而所有可编辑的源代码都已删除。) 文件。
关于引用和 .ade 文件
如果要从引用了其他 Access 项目或加载项的 Access 项目文件或加载项中创建 .ade (ADE 文件:所有模块都已编译且所有可编辑的源代码均已删除的 Microsoft Access 项目 (.adp) 文件。) 文件,则 Access 会显示一条出错消息并阻止该操作的完成。要将引用了其他 Access 项目的 Access 项目另存为 .ade 文件,必须从引用的第一个项目开始,将引用链中所有的项目都另存为 .ade 或 .mde (MDE 文件:Microsoft Access 数据库 (.mdb) 文件,其中的模块都已编译,而所有可编辑的源代码都已删除。) 文件。在将第一个项目另存为 .ade 或 .mde 文件后,必须将下一个项目中的引用更新为指向这个新的 .ade 文件后再将其另存为 .ade 文件,依此类推。
例如,如果 Project1.adp 引用了 Project2.adp,而 Project2.adp 又引用了 Project3.mda,则应执行以下操作:
将 Project3.mda 另存为 Project3.mde。
打开 Project2.adp 并且将其引用更改为指向新的 Project3.mde。
将 Project2.adp 另存为 Project2.ade。
打开 Project1.adp 并且将其引用更改为指向新的 Project2.ade。
将 Project1.adp 另存为 Project1.ade。
关于保护 .ade 文件
Microsoft Access 项目不能与 Microsoft Access 数据库 (Microsoft Access 数据库:数据和对象(如表、查询或窗体)组成的集合,与特定的主题或用途有关。Microsoft Jet 数据库引擎用于管理数据。) (.mdb) 使用相同的用户级安全机制 (用户级安全机制:在 Access 数据库中使用用户级安全机制时,数据库管理员和对象的所有者可以为各个用户或几组用户授予对表、查询、窗体、报表和宏的特定权限。)功能。您的 SQL Server (Microsoft SQL Server 数据库:Microsoft SQL Server 中的一个数据库,由表、视图、索引、存储过程、函数和触发器组成。) 数据库上存储的数据和其他对象必须使用 SQL Server 计算机的安全功能。
若要帮助保护对 Access 项目中 VBA 代码的访问,必须用密码保护 VBA 项目,或是通过将 Access 项目文件另存为 .ade 文件来删除 VBA 源代码。为了帮助保护对 Access 项目文件中窗体、报表和宏设计的访问,可以设置启动选项。
详情参见office帮助.