连接到现有工作簿会在xlwings中引发错误

2024-06-28 16:19:26 发布

您现在位置:Python中文网/ 问答频道 /正文

当我尝试连接到一个现有的工作簿并验证连接是否正常时,如下所示:

import xlwings as xw

wb = xw.Workbook('/users/edchigliak/sites/xlwings/htz/google/sem_google_realizacija_2016.xlsm')

print(wb.sheet(1).name)

Mac OSX Yosemite上的终端抛出这个错误

OSERROR: -1728 MESSAGE: The object you are trying to access does not exist
COMMAND: app(u'/Applications/MicrosoftExcel.app').workbooks['sem_google_realizacija_2016.xlsm'].name.get()

工作簿确实打开了,它会提示您提供启用宏和数据连接的权限,因此一切都很好。在我看来,我好像在尝试调用.name()方法(或属性?)打开微软Excel.app而不是从xlwings库?在

我最终想要做的(贯穿整个过程):

  1. 连接到此现有的.xlsm
  2. 阅读表14。范围F:F“和”表14。兰格一:我'变成一个python dict
  3. 验证此操作是否成功

请告诉我该怎么办。在


Tags: nameimportappasgooglexlwingsuserssites
1条回答
网友
1楼 · 发布于 2024-06-28 16:19:26

首先确保路径正确,例如,尝试在终端中运行open /users/edchigliak/sites/xlwings/htz/google/sem_google_realizacija_2016.xlsm,看看它是否正确打开。在

第二,你把表格的语法弄错了。应该是这样的:

 import xlwings as xw
 wb = xw.Workbook(...)
 print(xw.Sheet(1).name)

请注意,它自动引用最后实例化的工作簿。如果要显式指定工作簿,则当前需要这样做:

^{pr2}$

但这种语法在不久的将来可能会被修改。在

相关问题 更多 >