我一直试图将整个列从workbook1复制到workbook2,但不包括第一行。如何复制第一行并将结果保存到新工作簿(workbook3)中。
到目前为止我已经得到了以下代码
from openpyxl import load_workbook
wb1 = load_workbook("test1.xlsx")
wb2 = load_workbook("test2.xlsx")
ws1 = wb1.get_sheet_by_name('Sheet1')
ws2 = wb2.get_sheet_by_name('Sheet1')
mr = ws1.max_row
mc = ws1.max_column
for i in range(1, mr + 1):
ws2['A' + str(i)].value = ws1['A' + str(i)].value
wb2.save("test1.xlsx")
wb1.save("test2.xlsx")
字符串
1条答案
按热度按时间busg9geu1#
你的第一句话似乎很清楚;
那么你的第二句话就有些不一样了;
第二句是第一句以外的另一个问题吗?
对于您的代码似乎涵盖的第一个句子/问题;复制不包括第一行的列是很容易的。只在第1行上
continue
,然后复制剩下的部分。我对你的代码做了一些修改,因为语法被贬低了,或者有其他更喜欢的方法。
也注意;
1.您只需要保存已更改的文件。正在读取Excel文件“test1.xlsx”,因此该文件未被更改,不需要保存
'test2.xlsx'
打开的。您正在将其保存为原始工作簿'test1.xlsx'
,这将覆盖原始文件。字符串
如果句子2是一个单独的问题,并且您希望仅复制第1行(有效地复制单元格A1),则可以像前面一样执行操作,但不需要循环。只需创建一个新的工作簿,然后将原始单元格
A1
复制到单元格newA1
,并保存为工作簿名称workbook3
。