关于vba:在2003年和2007年同时运行Microsoft Access数据库有什么含义?

关于vba:在2003年和2007年同时运行Microsoft Access数据库有什么含义?

What are the implications of running a Microsoft access database in both 2003 and 2007?

在2003年和2007年同时运行Microsoft Access数据库有什么含义?

我忘记上课了吗?

该程序最初是在Office 2003中构建的,然后在2007年运行。当运行该程序的计算机同时具有2003和2007时,似乎会出现问题。该问题似乎也源于" Microsoft Access 12.0对象库"(或2003年的" Microsoft Access 11.0对象库")的引用。要查看此信息,只需查看VBA屏幕上的"工具:参考"菜单。

该错误的症状基本上是无法识别代码(几乎就像它无法识别我正在使用的编程语言一样)。通常,它后面带有一个框,上面写着"您在输入的表达式"加载时,事件属性设置导致以下错误:对象或类不支持事件集"。您也可以将"按负载"替换为"单击",将其替换为按钮,将"更改时"替换为文本框。

我个人怀疑计算机正在使用Microsoft Access 11.0 / 12.0对象库的一部分,然后将两者混合成无用的VBA参考。进一步证实了我的怀疑的是在显示"配置Microsoft Access"的两者之间时弹出的框。进一步证实我怀疑的另一个问题是它将在第一个打开的窗口(例如2007年)上运行,然后运行不能在其他服务器上运行(2003继续该示例)

唯一需要解决的唯一问题是更改DoCmd.OpenForm的最后一部分,即acFormReadOnly(或acReadOnly,具体取决于机器在特定日期的感觉-是的,它可以与之配合使用,一天,然后要我切换另一天)以简单地锁定各个文本框

也许它不是完全编码,但是我认为可以通过编码来解决。

希望这足以使某人提出一些建议。


Microsoft的官方立场是不建议在同一台PC上安装多个Office版本,也不建议这样做,而Access 2007似乎旨在向我们证明这一点!

也就是说,通过执行以下操作可以避免大多数问题:

1-将数据库分为后端和前端。将后端(表和关系)放置在网络文件夹中,然后将前端(所有其他对象)的副本放置在每个用户的桌面上。

2-最好使前端成为mde,以避免每次在其他版本的Access中打开db时,引用都乱序。

3-创建快捷方式以使用所需的Access版本打开前端,以便始终使用该版本打开它。 (记住使用快捷方式!)在快捷方式的目标中:

"访问12 msaccess.exe的路径"" db.mdb的路径"


通常,不支持在一台计算机上安装多个版本的Access,这会导致对象引用出现问题。

如果数据库是在Access 2003中编写的,编译为.MDE,然后部署到运行Access 2007的单独的Windows实例上,则您应该没有任何重大问题(除了UI更改,例如将自定义工具栏扔到了加载项中)色带)。

若要在多个版本的Access上进行测试,则每个版本之间都需要某种形式的隔离。我使用多个虚拟机来完成此任务。我的主要Windows VM运行Office 2007和IE7,第二个VM具有Office 2003和IE6进行测试。

请注意,如果只希望将Word,Excel和Outlook 2007与Access 2003一起使用,则可以先单独安装Access 2003,然后自定义安装Office 2007,然后取消选择Access 2007。


我们有一个用Access 2003开发的MS-Acces应用程序,可在Access 2003和Access 2007的完整版或运行时版本中使用(Access 2007 Runtime是免费的,我们正在大量使用它!)。除参考管理外,没有其他特殊问题。我们的代码分析安装在计算机上的Office版本并自动更新相应的引用(不仅是Access,还包括Excel,Outlook,Word等:代码非常棘手,但很有意思!)

据我所知,Office 2007中没有弃用Office 2003 / VBA中可用的主要对象,属性或方法。这些参考问题解决后,Office 2003代码将与Access 2007一起运行。 Office 2007中引入了一些新对象,因此我不建议任何开发人员使用它来开发要与Access 2003一起使用的代码。

但是您的问题的主要和真实问题是:为什么一个人应该在同一台计算机上同时运行两个Access版本?如果我想确保我的应用程序崩溃,这就是我要做的。我认为,如果您的目标是开发软件,则绝对应该为您的机器找到更好的配置!


推荐阅读

    linux数据库升级命令?

    linux数据库升级命令?,系统,信息,时间,最新,网络,名字,地址,管理,简介,传播,l

    脚本linux上运行命令?

    脚本linux上运行命令?,工具,代码,时间,密码,系统,环境,名字,位置,第三,下来,t

    数据库导出linux命令?

    数据库导出linux命令?,密码,数据,数据库,情况,地址,系统,工具,网上,名字,命

    linux运行脚本的命令?

    linux运行脚本的命令?,系统,工具,代码,服务,脚本,状态,密码,环境,位置,暂停,l

    linux命令行运行中断?

    linux命令行运行中断?,连续,工作,系统,信息,程序,命令,设备,工具,网络,情况,L

    vim运行linux命令?

    vim运行linux命令?,系统,工作,信息,地址,命令,标准,时间,情况,工具,基础,linu

    linux下并行运行命令?

    linux下并行运行命令?,系统,服务,工作,命令,环境,网络,暂停,文件,脚本,参数,l

    linux恢复数据库命令?

    linux恢复数据库命令?,工具,系统,软件,数据,盘中,密码,命令,备份,数据库,文

    jar运行命令linux?

    jar运行命令linux?,项目,系统,平台,工具,上期,命令,选项,日志,文件名,目录,Li

    jar运行命令linux?

    jar运行命令linux?,项目,系统,平台,工具,上期,命令,选项,日志,文件名,目录,Li

    linux下并行运行命令?

    linux下并行运行命令?,系统,服务,工作,命令,环境,网络,暂停,文件,脚本,参数,l

    linux命令大全数据库?

    linux命令大全数据库?,服务,系统,平台,状态,软件,通用,环境,数据,神州,地址,

    linux上数据库的命令?

    linux上数据库的命令?,服务,系统,信息,地址,命令,密码,工具,管理,数据,单位,

    linux命令dm数据库?

    linux命令dm数据库?,地址,软件,时间,设备,名字,服务,位置,名称,公司,命令,lin

    linux命令行后台运行?

    linux命令行后台运行?,服务,状态,标准,暂停,命令,后台,连续,地方,工作,方法,l

    脚本运行linux命令?

    脚本运行linux命令?,系统,环境,工具,工作,位置,底部,代码,发行,官网,终端,lin

    linux进程运行命令?

    linux进程运行命令?,系统,工作,状态,地址,信息,进程,基础,命令,管理,软件,lin

    linux显示运行命令?

    linux显示运行命令?,系统,服务,状态,信息,工具,数据,电脑,标准,管理,时间,如

    linux运行vim命令?

    linux运行vim命令?,系统,工具,官方网站,模式,基础,数据,代码,环境,入口,命令