我有一个数据电子表格,想知道包含数据的范围的第一个和最后一个单元格。我使用Python和OpenPyxl。属性返回非空单元格区域的左上角和右下角单元格。
我怎样才能把板材尺寸的结果放在2个变量中。示例:板材尺寸的结果为A2:C20。
我需要一个变量包含范围的第一个单元格(本例中为A2),另一个变量包含范围的最后一个单元格(本例中为C20)。
我期待的东西像表。尺寸。第一次和最后一次,但到目前为止,我找不到答案。
the spreadsheet
该程序的基本内容如下:
import openpyxl
book = openpyxl.load_workbook('test 1.xlsx', data_only=True)
sheet = book.active
print (sheet.dimensions)
book.save("result test 1.xlsx")
当程序运行时,它给出的结果是A2:C20。
3条答案
按热度按时间uubf1zoe1#
我发现openpyxl有以下属性:
这些正是我需要的数字,有了这些数字,我就知道处理整个工作表需要多少次迭代。范例:
dgjrabp22#
会认为只要在字符串返回上使用
split
方法就可以开始了。这将给您给予两个单元地址,Openpyxl随后有方法将其用作返回单元对象(在这些地址)的参数。这样的话,就不应该有一个以上的冒号,尽管可能需要为工作表上的单个单元格(也许根本没有冒号)设置奇怪的情况。会认为这可能会起作用:
upper_left, lower_right = return_string.split(":")
xlpyo6sf3#
有点晚了,但对于其他使用openpyxl的人来说,它有一些有用的实用函数来做这件事,并且可以处理任何奇怪的边缘情况。