我正在使用openyxl来加载和保存工作簿,但我希望它在Excel完成后在Excel中打开文件。我是编程和Python的新手。我可能遗漏了一些非常基本的东西。使用Windows 10和Anaconda。我试过这些:
from openpyxl import Workbook
from openpyxl import load_workbook
wb = load_workbook(filename = 'book.xlsx')
wb.save('sample_book.xlsx')
和
from openpyxl import load_workbook
wb = load_workbook('book.xlsx')
ws = wb.active
# need to pull in data here
wb.save('sample_book.xlsx')
他们都加载并将文件保存到我的硬盘驱动器,但我希望它在excel中打开以便在操作完成时进行查看。我错过了什么?
答案 0 :(得分:3)
Openpyxl与xlsx
文件一起使用,但它不适用于Excel。事实上,它可以在没有任何Excel支持的非Windows平台上运行。
您可以使用subprocess
使用Excel打开Excel文件。最简单的方法是:
subprocess.call([r'c:\path\to\excel.exe', r'c:\path\to\sample_book.xlsx', shell=True])
这将阻止您调用Python程序,直到您关闭Excel。
这启动Excel和你的程序继续:
subprocess.Popen([r'c:\path\to\excel.exe', r'c:\path\to\sample_book.xlsx', shell=True])
确保对具有反斜杠的路径使用r''
。 r''
使路径字符串成为原始字符串,并转义特殊字符,例如\n
或\t
。