我正在尝试将文本粘贴到现有Excel的列中。但是,我需要跳过所有突出显示的单元格。例如:content.txt12345workbook.xlsx应该看起来像以下是我到目前为止的代码:import os, openpyxlf = open("content.txt", mode="r+")wb = openpyxl.load_workbook(filename = 'workbook.xlsx')worksheet = wb.activer = 1for line in f.readlines(): if worksheet.cell(row=r, column=9).fill.bgColor.value != '00000000': r+=1 worksheet.cell(row=r, column=1).value = line r+=1 continue else: worksheet.cell(row=r, column=1).value = line r += 1f.close()但它只跳过突出显示的一行。尽管如此,我仍在设法弄清楚。或者,如果我编写这样的代码:import os, openpyxlf = open("content.txt", mode="r+")wb = openpyxl.load_workbook(filename = 'workbook.xlsx')worksheet = wb.activer = 1for line in f.readlines(): if worksheet.cell(row=r, column=9).fill.bgColor.value != '00000000': r+=1 continue else: worksheet.cell(row=r, column=1).value = line r += 1f.close()结果将是:( 该txtline也会被跳过...)让我知道您是否有任何想法。我是否应该使用while循环...?谢谢!!
2 回答
慕田峪4524236
TA贡献1875条经验 获得超5个赞
if在for循环中添加一条语句
r = 1
for line in f.readlines():
if worksheet.cell(row=r, column=1).fill.bgColor.value != '00000000':
# '00000000' corresponds to no fill
continue
worksheet.cell(row=r, column=1).value = line
r += 1
f.close()
另外,r+=1您在此处发布的代码中缺少缩进。
添加回答
举报
0/150
提交
取消