我正在使用python格式化Excel电子表格。我需要从表#1 "Main“中的列L复制数据,并将其粘贴到表#2 " data”中的列A中。我已经让它正常工作了,但我也想跳过空单元格,这是在表#1中随机出现的,在这里我运行了intro。
我试过了:
for i in range(2, 50):
for j in range(12, 13):
if cell.value != None:
data.cell(row=i, column=j-11).value = main.cell(row=i, column=j).value然而,我得到错误消息"NameError:名称‘值’未定义“
有什么想法吗?
发布于 2020-01-06 10:45:55
这是我们运行的代码(请参阅前后的注释):
import os
import openpyxl
wb = openpyxl.load_workbook('/Users/path/.xlsx')
main = wb['Sheet1']
wb.create_sheet(title='Formatted Data')
data = wb['Formatted Data']
for i in range(2, 50):
for j in range(12, 13):
if main.cell(i,j).value != None:
data.cell(data.max_row+1, column=j-11).value = main.cell(row=i, column=j).value发布于 2020-01-06 19:31:09
只要有可能,你就应该避免使用自己的计数器,让openpyxl为你做这项工作。对于一个新的工作表,这是非常简单的。
empty_row = [None] * 11
for row in main.iter_rows(min_col=12, max_col=2, min_row=2, values_only=True):
if row[0] != None:
data.append(empty_row + row]https://stackoverflow.com/questions/59605804
复制相似问题