我对一个用户的工作站有问题。Access数据库的开发版本使用.bat文件分发到工作站。除了一个工作站外,这个数据库在所有工作站上都运行得很好。
特定工作站将不允许用户运行特定的查询,从而导致3075错误。我已经穿越网络,并意识到这是一个问题的参考资料。然而,没有缺少引用,但是如果我强制Access刷新它的引用,通过检查一个未选择的引用,然后再次删除该引用,数据库将完全正常工作。在用户再次运行.bat并接收到最新版本的DB之前,它运行得很好。
我已经使用Regsvr32.exe未注册和重新注册了引用,但问题仍然存在。
我已经完成了一个全新的Office安装,但问题仍然存在。
是否有一种方法可以强制Access通过打开的VBA刷新其引用?
如果不这样做,我将被迫做一个干净的机器安装。
这台机器在大约30分钟内就出现了这个问题,在此之前,它已经完美地工作了2-3年。
发布于 2015-02-10 15:58:03
您表示可以手动“检查未选定的引用,然后再次删除引用”来解决问题。
可以使用VBA代码添加和删除引用。添加引用有两种不同的方法:AddFromFile;和AddFromGuid。AddFromFile需要提供引用的文件的完整路径。AddFromGuid需要GUID,以及参考的主要和次要版本。
从现有的参考资料中很容易收集到这些信息。我添加了一个对的引用,然后在“立即”窗口中检查它的属性。
? References("Excel").FullPath
C:\Program Files (x86)\Microsoft Office\Office14\EXCEL.EXE
? References("Excel").Guid
{00020813-0000-0000-C000-000000000046}
? References("Excel").Major
1
? References("Excel").Minor
7 然后,我可以删除该引用,并使用AddFromFile方法再次添加它。
References.Remove References("Excel")
References.AddFromFile "C:\Program Files (x86)\Microsoft Office\Office14\EXCEL.EXE"或者用AddFromGuid方法..。
References.Remove References("Excel")
References.AddFromGuid "{00020813-0000-0000-C000-000000000046}", 1, 7这些方法适用于我的数据库。但是,我的数据库一开始就没有引用问题。如果你这样做了,我不知道这是否可行。
https://stackoverflow.com/questions/28430190
复制相似问题