为什么这个xlsx文件不会打开?

时间:2015-11-10 20:33:33

标签: python excel

我正在尝试使用openpyxl模块获取电子表格,查看某列中是否有空单元格(在本例中为E列),然后将包含这些空单元格的行复制到新的电子表格中。代码运行时没有回溯,但生成的文件将无法打开。发生了什么事?

这是我的代码:

#import the openpyxl module
import openpyxl

#First create a new workbook & sheet
newwb = openpyxl.Workbook()
newwb.save('TESTINGTHISTHING.xlsx')
newsheet = newwb.get_sheet_by_name('Sheet')

#open the original file
wb = openpyxl.load_workbook('OriginalWorkbook.xlsx')

#create a sheet object
sheet = wb.get_sheet_by_name('Sheet1')

#Find out how many cells of a certain column are left blank, 
#and what rows they're in
count = 0
listofrows = []
for row in range(2, sheet.get_highest_row() + 1):
    company = sheet['E' + str(row)].value
    if company == None:
        listofrows.append(row)
        count += 1
print listofrows
print count

#Put the values of the rows with blank company names into the new sheet
for i in range(len(listofrows)):
    j = 0
    newsheet['A' + str(i+1)] = sheet['A' + str(listofrows[j])].value
    j += 1

newwb.save('TESTINGTHISTHING.xlsx')

请帮忙!

1 个答案:

答案 0 :(得分:1)

我刚用模拟文档运行你的程序。我能够毫无问题地打开输出文件。您的问题可能依赖于您的excel或openpyxl版本。

除了源文档之外,请提供您的软件版本,以便我可以进一步了解该问题。

您始终可以使用以下命令更新openpyxl:

c:\Python27\Scripts
pip install openpyxl --upgrade