使用 Python 3 和 tkinter 写一个excle表处理程序,GUI上有3个文本框3个按钮,按钮名称分别叫导入表格、绩效总表、处理表格。点击导入表格导入多个需要处理的表格文件显示在第一个文本框中。点击绩效总表按钮导入表格文件显示到第二个文本框中,点击处理表格按钮,将每一个导入的表格的第一给工作表的名称改为表格文件名,然后复制导入表格中每一个表格的第一个工作表粘贴到绩效总表中。上面的程序都给我写在一个文件里面。
时间: 2024-02-12 11:06:03 浏览: 103
如何用python处理excel表格
好的,这里是完整的程序代码,已经将三个部分整合在一个文件中:
```python
import tkinter as tk
from tkinter import filedialog
import openpyxl
root = tk.Tk()
# 添加三个文本框
text_box1 = tk.Text(root, height=5, width=50)
text_box1.pack()
text_box2 = tk.Text(root, height=5, width=50)
text_box2.pack()
text_box3 = tk.Text(root, height=5, width=50)
text_box3.pack()
# 添加三个按钮
def import_files():
# 打开文件对话框,选择要导入的表格文件
file_paths = filedialog.askopenfilenames()
# 将选择的文件路径显示在第一个文本框中
text_box1.delete('1.0', tk.END)
text_box1.insert(tk.END, '\n'.join(file_paths))
import_button = tk.Button(root, text='导入表格', command=import_files)
import_button.pack()
def import_total_table():
# 打开文件对话框,选择要导入的表格文件
file_path = filedialog.askopenfilename()
# 将选择的文件路径显示在第二个文本框中
text_box2.delete('1.0', tk.END)
text_box2.insert(tk.END, file_path)
total_table_button = tk.Button(root, text='绩效总表', command=import_total_table)
total_table_button.pack()
def process_files():
# 获取要处理的表格文件路径
file_paths = text_box1.get('1.0', tk.END).strip().split('\n')
# 获取绩效总表文件路径
total_table_path = text_box2.get('1.0', tk.END).strip()
# 打开绩效总表
total_table = openpyxl.load_workbook(total_table_path)
# 遍历每个表格文件,将第一个工作表的名称改为文件名,并将其粘贴到绩效总表中
for file_path in file_paths:
# 打开表格文件
file_name = file_path.split('/')[-1]
workbook = openpyxl.load_workbook(file_path)
# 获取第一个工作表
first_sheet = workbook.worksheets[0]
# 将第一个工作表的名称改为文件名
first_sheet.title = file_name
# 将第一个工作表的内容复制到绩效总表中
total_table.copy_worksheet(first_sheet)
# 保存表格文件
workbook.save(file_path)
# 保存绩效总表
total_table.save(total_table_path)
process_button = tk.Button(root, text='处理表格', command=process_files)
process_button.pack()
root.mainloop()
```
请注意,运行此程序需要安装 `openpyxl` 库。
阅读全文