嗨,我正在运行python2.6.5中的msaccess(2010)宏。它成功地运行了宏,但是accdb文件没有完全正确地关闭。在我的宏运行后,它显示了一个.laacdb文件和.accdb文件。我认为使用CloseCurrentDatabase和Quit语句可以做到这一点,但事实并非如此。重新启动计算机后,.laacdb文件就会消失。谢谢您。在
from win32com.client import Dispatch
strDbName = "C:\\converter\\MainConverter.accdb"
objAccess = Dispatch("Access.Application")
objAccess.Visible = False
objAccess.OpenCurrentDatabase(strDbName)
objDB = objAccess.CurrentDb()
objAccess.DoCmd.RunMacro('Export_to_PDF')
objAccess.Application.CloseCurrentDatabase()
objAccess.Application.Quit
在VBA中,我们通常将对象变量设置为
Nothing
来处理它们。在Python中,尝试显式删除objAccess
变量。在对不起,我的Python已经被废弃了,所以可能是我弄错了语法。但类似的事情可能会有所帮助。在
另外,我想不起来在
^{pr2}$.Quit
方法之后是否需要一对括号。这样试试,以防万一:如果
^{3}$objDB
仍然保留对访问应用程序/db的引用,请将其也删除。在但是,如果实际代码中没有实际使用它,只需完全消除
objDB
。在相关问题 更多 >
编程相关推荐