工作表中命名范围的字典

时间:2019-05-22 19:06:26

标签: python excel xlwings

我有一个包含大量命名范围的Excel电子表格。我希望能够以有效的方式从他们那里获取数据。最好是在python字典中,以范围的名称为键,值作为值。或以某种方式制作一个伪工作簿,使我可以阅读工作表而无需所有对excel的调用。

现在,我分别从每个命名范围中获取值。这可以,但是非常慢。理想情况下,将进行一次或两次调用以获取所有命名范围。我目前正在使用@ xw.sub来获取值。

@xw.sub
def get_named_ranges():
    wb = xw.Book.caller()
    ranges = {}
    ranges['MyNamedRange1'] = wb.sheets['sheet1'].['MyNamedRange1'].value
    ranges['MyNamedRange2'] = wb.sheets['sheet1'].['MyNamedRange2'].value
    ranges['MyNamedRange3'] = wb.sheets['sheet1'].['MyNamedRange3'].value

Named Range Example

1 个答案:

答案 0 :(得分:0)

您也许可以使用Pandas

enter image description here

from pandas import *
xls = ExcelFile('test.xlsx')
df = xls.parse(xls.sheet_names[0])
print(df.to_dict())

enter image description here