我有一个Access数据库,可以将数据导出到程序生成的Excel模板中,以查看可视性,更复杂的计算/可视化,最重要的是,它允许用户更多地使用数据。从Access VBA引用Solver32.dll
此模板需要做的基本事情之一是执行解算器例程。求解器不存在于访问中的任何标准参考库(我知道的)。我在这方面有点新,但是我看了看网络,发现了Solver32.dll的位置,我指出了它的参考,它不会考虑它。看了更多,看到我可能需要使用regsvr32注册它,因为它不在system32目录中,我试过了,它不起作用。
这可能是由于我有一些管理员级别的访问问题(工作计算机......叹气),而我试图让这些排序,但我有一种感觉,这不会解决它。
不管怎么说,提问时间:
1)我只需要注册Solver32.dll管理员权限,然后将我的参考工作容易吗?
2)如果没有,是否有另一种方法来引用解算器库? 3)如果不是,或者我无法获得注册solver32.dll的权利(可能,我的IT部门可能很吝啬),有没有办法在我使用的Excel表中打开插件求解器代码?只是让它在那里运行?因为如果代码是超级简单:
........
AddIns("Solver Add-In").Installed = True
solveradd cellref:="$D$6", Relation:=1, FormulaText:="1"
solveradd cellref:="$D$6", Relation:=3, FormulaText:="0"
SolverOk SetCell:="$F$6", MaxMinVal:=2, ValueOf:=0, ByChange:="$B$6:$D$6", _
Engine:=1, EngineDesc:="GRG Nonlinear"
SolverSolve
............
不管怎么说,一直在寻找这是一天中的一大块解决方案。 MS无法帮助MS以无限的智慧选择这个程序Access,这对搜索(讽刺)时确实有帮助。
编辑:回答在评论
版本的一些问题:Access 2010中
错误: 当我尝试从Access VBA IDE我得到这个错误基准的DLL“不能添加引用到指定文件“
当我尝试运行regsvre.exe时出现此错误”模块'C:\ ProgramFiles ............. \ Solver32.dll“被加载但未找到入口点DllRegisterServer。确保“C:\ ProgramFiles ......... \ Solver32.dll”是一个有效的DLL或OCX文件,然后再试一次。“
'我试过了,它没有工作。'我假设这给了某种错误信息? – enderland 2013-03-01 21:23:05
您正在运行的访问版本。 – Hiten004 2013-03-02 03:25:18
你检查了dll的文件属性吗?你试图连接哪个版本的求解器?你有没有试图在Excel中设置一个参考?您是否曾尝试将solver.dll复制到注册副本的文件系统中的其他位置?到目前为止你的错误信息是什么? – collapsar 2013-03-02 14:41:18