Python Excel 数据读取和写入:将每行结果保存到新表格
你可以使用 openpyxl 库来创建新的 Excel 表格并写入数据。首先,你需要导入 openpyxl 库,并创建一个新的工作簿和工作表。然后,使用 for 循环遍历 data 列表中的每个结果,将其写入新的表格中。最后,保存工作簿为一个新的 Excel 文件。以下是修改后的代码:
from tkinter import messagebox
from tkinter import filedialog
import openpyxl
def open_file():
file_path = filedialog.askopenfilename(filetypes=[('Excel Files', '*.xlsx')])
if file_path:
try:
workbook = openpyxl.load_workbook(file_path)
sheet = workbook.active
# 获取单元格数据
data = []
for row in sheet.iter_rows(values_only=True):
a, b, c = row[0], row[1], row[2]
row_sum = a + b + c
data.append(row_sum)
# 创建新的工作簿和工作表
new_workbook = openpyxl.Workbook()
new_sheet = new_workbook.active
# 写入结果到新的表格
for i, result in enumerate(data):
new_sheet.cell(row=i+1, column=1, value=result)
# 保存工作簿为新的 Excel 文件
new_file_path = filedialog.asksaveasfilename(defaultextension=".xlsx")
new_workbook.save(new_file_path)
# 创建弹窗并展示表格内容
messagebox.showinfo("Excel Data", "结果已写入新的 Excel 文件。")
except Exception as e:
messagebox.showerror("Error", str(e))
root = tk.Tk()
root.title("Excel Reader")
root.geometry("200x100")
open_button = tk.Button(root, text="Open File", command=open_file)
open_button.pack()
root.mainloop()
请注意,代码中添加了创建新的工作簿和工作表的部分,并在 for 循环中使用new_sheet.cell()方法将结果写入新的表格中。最后,通过new_workbook.save()方法保存工作簿为一个新的 Excel 文件。
原文地址: https://www.cveoy.top/t/topic/pMMZ 著作权归作者所有。请勿转载和采集!