连接到现有工作簿会在xlwings中引发错误
当我尝试连接到现有的工作簿并validation连接是否正常工作时,如下所示:
import xlwings as xw wb = xw.Workbook('/users/edchigliak/sites/xlwings/htz/google/sem_google_realizacija_2016.xlsm') print(wb.sheet(1).name)
terminal在Mac OSX Yosemite抛出这个错误 :
OSERROR:-1728 MESSAGE:您尝试访问的对象不存在
COMMAND:app(u'/ Applications / MicrosoftExcel.app')。workbooks ['sem_google_realizacija_2016.xlsm']。name.get()
工作簿确实被打开 ,它会提示要求启用macros和数据连接的权限,所以一切都很好。 在我看来,如果我试图在MicrosoftExcel.app而不是从xlwings库调用.name()方法(或属性?)?
我最终希望做的事(贯穿整个过程):
- 连接到这个现有的.xlsm
- 阅读'Sheet14.RangeF:F'和'Sheet14.RangeI:我'成一个python字典
- validation这是成功的
请告诉我如何去做这件事。
首先确保您的path正确,例如尝试在您的terminal中open /users/edchigliak/sites/xlwings/htz/google/sem_google_realizacija_2016.xlsm
以查看它是否正确打开。
其次,你的表格有错误的语法。 应该是这样的:
import xlwings as xw wb = xw.Workbook(...) print(xw.Sheet(1).name)
请注意,它会自动引用上次实例化的工作簿。 如果你想明确指定工作簿,你现在需要这样做:
xw.Sheet(1, wkb=wb).name
但是这个语法可能会在不久的将来被修改。