如何将工作表的范围作为变量

时间:2017-09-19 03:20:58

标签: python range openpyxl

我有一张excel表用于通过python openpyxl读取数据...所以在我的脚本中我的值被硬编码为ws [' E2':' AB3& #39;]因为AB3是要读取的最后一个条目...但现在工作表已更新,现在最后一个单元格坐标是AR3 ...我如何使代码通用,以便每次更新代码都应该有效。 。? 注意(我找出表格中的总行数和列数...我能做什么)

rows = ws.max_row
column = ws.max_column
print(rows,column)
column_letter = get_column_letter(column)
print(column_letter)

2 个答案:

答案 0 :(得分:0)

  

问题:如何使代码通用

     

注意:我认为您总是希望从' E2'开始。

from openpyxl.utils import range_boundaries
# Define only start 'E2',     
# all max_* values, last Row, Column, are returned by Default
min_col, min_row, max_col, max_row = range_boundaries('E2')

# Iterate all Rows, starting at min_row == 2
for columns in worksheet.iter_rows(min_col=min_col, min_row=min_row, max_col=max_col, max_row=max_row):
    # Iterate all Columns, starting at min_col == 'E'
    for cell in columns:
        print('%s: cell.value=%s' % (cell, cell.value) )  

答案 1 :(得分:-1)

如果您只想加载所有列,请使用pandas,它更简单,功能更多。

{{1}}