tkinter对execl表格增删查改
时间: 2023-06-25 14:04:34 浏览: 66
可以使用 openpyxl 库来对 Excel 表格进行增删查改操作,而 Tkinter 可以用来创建图形用户界面(GUI)。
以下是一个简单的例子:
```python
import openpyxl
from tkinter import *
# 打开 Excel 文件
wb = openpyxl.load_workbook('example.xlsx')
# 选择表格
sheet = wb.active
# 定义函数,用于向 Excel 表格中添加数据
def add_data():
row = sheet.max_row + 1
sheet.cell(row=row, column=1).value = name_entry.get()
sheet.cell(row=row, column=2).value = age_entry.get()
sheet.cell(row=row, column=3).value = gender_entry.get()
wb.save('example.xlsx')
name_entry.delete(0, END)
age_entry.delete(0, END)
gender_entry.delete(0, END)
# 定义函数,用于从 Excel 表格中查找数据
def search_data():
name = name_entry.get()
for row in sheet.iter_rows(min_row=2, values_only=True):
if name == row[0]:
age_entry.delete(0, END)
gender_entry.delete(0, END)
age_entry.insert(0, row[1])
gender_entry.insert(0, row[2])
break
# 定义函数,用于更新 Excel 表格中的数据
def update_data():
name = name_entry.get()
for row in sheet.iter_rows(min_row=2, values_only=True):
if name == row[0]:
row[1] = age_entry.get()
row[2] = gender_entry.get()
wb.save('example.xlsx')
break
# 定义函数,用于从 Excel 表格中删除数据
def delete_data():
name = name_entry.get()
for row in sheet.iter_rows(min_row=2, values_only=True):
if name == row[0]:
sheet.delete_rows(row[0])
wb.save('example.xlsx')
name_entry.delete(0, END)
age_entry.delete(0, END)
gender_entry.delete(0, END)
break
# 创建 GUI 界面
root = Tk()
root.title('Excel Editor')
name_label = Label(root, text='Name')
name_label.grid(row=0, column=0)
age_label = Label(root, text='Age')
age_label.grid(row=1, column=0)
gender_label = Label(root, text='Gender')
gender_label.grid(row=2, column=0)
name_entry = Entry(root)
name_entry.grid(row=0, column=1)
age_entry = Entry(root)
age_entry.grid(row=1, column=1)
gender_entry = Entry(root)
gender_entry.grid(row=2, column=1)
add_button = Button(root, text='Add', command=add_data)
add_button.grid(row=3, column=0)
search_button = Button(root, text='Search', command=search_data)
search_button.grid(row=3, column=1)
update_button = Button(root, text='Update', command=update_data)
update_button.grid(row=4, column=0)
delete_button = Button(root, text='Delete', command=delete_data)
delete_button.grid(row=4, column=1)
root.mainloop()
```
这个例子中,我们创建了一个包含添加、查找、更新和删除数据功能的 Excel 编辑器。其中,我们使用 openpyxl 库来读取和修改 Excel 文件,使用 Tkinter 创建图形用户界面。你可以根据自己的需求,对代码进行修改和扩展。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)