Openpyxl 更新工作表之间的值
Openpyxl update values between sheets
我有一个包含 table 和主 sheet 的工作簿。我想更改 table 中的一些值并更新主 sheet 中的值。
我试过的代码是:
for row in ws1.iter_rows(row_offset=1,min_col=1,max_col=1):
for cell in row:
ws1.cell(row=cell.row, column=23).value = '=MyTable[@Price]'
代码运行良好,但在我的主 sheet 中为该列中的所有单元格创建了 #REF 错误。
我不确定如何更改 table 上的值并让它更新另一个 sheet 上的值。
我可以通过暂停脚本、进行更改、保存并关闭文件以及恢复脚本来解决这个问题。
nwb.save("C:/mytable.xlsx")
os.startfile("C:/mytable.xlsx")
print("After making changes and saving file, press enter to continue.")
input()
nwb = openpyxl.load_workbook("mytable.xlsx")
ws4 = nwb.get_sheet_by_name("mysheet")
for row in ws1.iter_rows(row_offset=1,min_col=1,max_col=1):
for cell in row:
a = ws4.cell(row=cell.row, column=9).value
ws1.cell(row=cell.row, column=23).value = a
这似乎是解决此问题的菜鸟方法,但我对 Python 和一般编程还很陌生。
我有一个包含 table 和主 sheet 的工作簿。我想更改 table 中的一些值并更新主 sheet 中的值。 我试过的代码是:
for row in ws1.iter_rows(row_offset=1,min_col=1,max_col=1):
for cell in row:
ws1.cell(row=cell.row, column=23).value = '=MyTable[@Price]'
代码运行良好,但在我的主 sheet 中为该列中的所有单元格创建了 #REF 错误。
我不确定如何更改 table 上的值并让它更新另一个 sheet 上的值。
我可以通过暂停脚本、进行更改、保存并关闭文件以及恢复脚本来解决这个问题。
nwb.save("C:/mytable.xlsx")
os.startfile("C:/mytable.xlsx")
print("After making changes and saving file, press enter to continue.")
input()
nwb = openpyxl.load_workbook("mytable.xlsx")
ws4 = nwb.get_sheet_by_name("mysheet")
for row in ws1.iter_rows(row_offset=1,min_col=1,max_col=1):
for cell in row:
a = ws4.cell(row=cell.row, column=9).value
ws1.cell(row=cell.row, column=23).value = a
这似乎是解决此问题的菜鸟方法,但我对 Python 和一般编程还很陌生。