今天在做python 打开带有密码的excel:
from win32com.client import Dispatch
xlApp = Dispatch("Excel.Application")
xlApp.Visible = True #打开excel时是否可见
xlopen = xlApp.Workbooks.Open(os.path.abspath(r'test.xlsx'),UpdateLinks=3,ReadOnly=False,Format = None,Password=MyPassWord,WriteResPassword='456')
在使用pyinstaller 打包程序后在另外一台电脑就打不开了,经过研究,发现可能是文件路径的问题
然后查了很多资料,通过验证,发现Workbooks.Open(path),这个path跟最近excel打开的路径一样的,却不是我想要的本地路径,最后在网上查到一篇文章帮我解决
了这个问题:http://www.crifan.com/python_pywintypes_com_error_exception_occurred_microsoft_excel_xls_could_not_be_found_check_the_spelling_of_the_file_name/
在这里也非常感谢这位仁兄的分享,帮助我解决这个问题
总结就是,在使用Workbooks.Open时需要加os.path.abspath得到绝对路径
关于win32 的说明:
http://www.cnblogs.com/cfcool/archive/2010/02/05/1664137.html