我继承了一个Access 2003 ADP文件,该文件使用sql 2000作为它的数据源。这是我的第一个访问维护项目,并没有考虑所涉及的问题只是在我的开发机器上的Access 2007中打开它。它当然有效,我继续完成所要求的工作。
我已完成工作并将文件提交给客户端,他在Access 2003中打开并继续接收几个错误,这些错误都与未声明的变量有关。在这一点上,我意识到没有任何代码文件具有Option Explicit set。我再次查看访问2007中的项目 - 没有错误。行为就好像access 2007尊重Lack of Option Explicit并按预期工作,但访问2003“think”Option Explicit已设置,即使它从未出现在任何代码文件中。
我意识到我只能使用Access 2003重新完成这项工作,但这比我想要的更费时。有人可以提供建议或解决方案吗?
谢谢。
答案 0 :(得分:0)
奇怪的问题 - 我无法看到Access 2003如何在没有任何Option Explicit的情况下检查显式变量声明。还有其他事情必须继续。
您可以使用Access 2003在您的计算机上重现行为吗?
你真的申报你的变量怎么样?无论如何都应该设置Option Explicit。
更新:
因为目标是尝试获取Access 2003 mdb(从2007年保存)。我会尝试一件事。
使用Access 2003使用/ decompile开关打开mdb
答案 1 :(得分:0)
这对你没什么帮助,但是当我的一个客户切换到Office 2007时,我很快就学会了,我不应该在2007年的2003 db上工作,然后尝试在2003年运行它。 2007年然后转换到2003年也不起作用。在2003年开发,然后在2007年运行2003 db(无转换)非常好。大部分时间都是。
问题第二部分的可能答案: 1.将您的2007 db转换为2003格式。 2.在2003年打开一个新的空数据库 3.从转换的2003 db中导入所有对象。重新编译,并在客户端的计算机上进行尝试。
答案 2 :(得分:0)
我也有这个问题。我正在开发一个连接到SQL后端的Access 2003前端2年。我愚蠢地开始使用Access 2007认为我所要做的就是以2003格式保存,一切都会好的。
不是这样。我的所有用户仍然使用2003报告了问题。
这个问题最终很容易解决。我实际上没有使用任何2007功能,因此所有改变的是库引用。我有2个缺少对Word和Excel 12.0库的引用,这些库只是在2007年打开数据库时自动包含。感谢Microsoft。
取出这些引用,我能够“修复”我的数据库,而不必恢复到早期版本,失去2天的工作。
我希望这有助于某人。