【问题标题】:openpyxl xlsx file cell value = noneopenpyxl xlsx 文件单元格值 = 无
【发布时间】:2013-09-20 08:09:19
【问题描述】:

我想使用 openpyxl 读取一个 xlsx 文件。 这是我使用的典型代码:

import openpyxl

wb = openpyxl.load_workbook("example.xlsx")
sh = wb.get_sheet_by_name(name="Sheet3") or wb.get_sheet_by_name(name="Section3")
for rownum in range(1, sh.get_highest_row()):
    print str(sh.cell(row=rownum, column=1).value)

在此示例中,我能够从第一列中找到值。 问题是我在第二列和其他列中有数据,但在输出中我得到了 None....

任何帮助将不胜感激。

【问题讨论】:

  • 我从来没有使用过 python,但是如果你想要来自其他列的数据,你不应该在循环中使用你正在为行做的变量来增加 column 的值吗?
  • 我知道,这只是为了测试,column=1 有效,当我用 column=2 进行测试时,column=3 或 4 都没有……只有“some”列返回一些东西。不知道为什么每列都有数据。
  • 你能调试一下sh.get_highest_row()的值是多少
  • 我的行数正确。如果我打印 rownum 它会一直到最后一个,在 excel 中我有 11500 行并且输出停止在这个数字。
  • 在 VBA 中,范围类似于 Range("A1:A" & lastrow)。在 python 中,range(1, sh.get_highest_row()) 是否描绘了类似的东西?

标签: python excel python-2.7 xlsx openpyxl


【解决方案1】:

它适用于库 xlrd。 excel文件是用java库生成的。这种创建方式看起来有问题。用excell 2013打开,另存为新的xlsx文件效果也更好。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-07
    • 1970-01-01
    • 2012-09-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多