【发布时间】:2022-01-07 12:08:38
【问题描述】:
我是一个小程序员,我在使用 openpyxl 和 Tkinter 组合时遇到了一些问题。 我正在用 Gui 制作一个 Excel 编辑器,但是当我使用它时,它没有编辑过一个单元格。 代码的详细信息是:
Python 3.9,使用的模块:仅 Tkinter 和 openpyxl
import tkinter as tk
from openpyxl import *
#Excel FIle Setup
xlfile = load_workbook(filename="main.xlsx")
sheet = xlfile.active
#Defining Save Function
def save():
cell = cellIn
xlfile.save(filename="main.xlsx")
#Main Window Setup
app = tk.Tk(screenName='Excel Editor', baseName='Gui for Editing', className='Excel Editor', useTk=1)
app.title('Excel Editor')
frame = tk.Frame(app)
frame.pack()
#Cell Name Block and Entry
tk.Label(frame, text = "Cell Name :").grid(row=0)
one = tk.StringVar()
cellNameEntry = tk.Entry(frame, text = one).grid(row = 0, column = 1)
cell = (one.get())
#Cell Input Block and Entry
tk.Label(frame, text = "Cell Input :").grid(row=1)
two = tk.StringVar()
cellInput = tk.Entry(frame, two).grid(row=1, column = 1)
cellIn = (two.get())
#SAVE Button With Quit Button
tk.Button(frame, text="SAVE", command=save).grid(row = 2)
tk.Button(frame, text="QUIT", command=quit).grid(row = 2, column = 1)
app.mainloop()
我在我的代码中看不到任何错误,但如果有,请回答。 这是我的第一个问题,所以我使用了非常正式、温和的语言
【问题讨论】:
-
我没有看到任何修改工作表的代码。
-
不,我已将其作为 save() 函数,因为要修改的 openpyxl 命令是 sheet['cell_name'] = 'cell_content' 所以我使用 [cell {variable}] 作为 cell_name 和 [ cellin {variable}] 作为 cell_content
-
但如果我犯了任何错误,请帮忙修复它。
-
Tk 代码与 openpyxl 并没有真正的联系:没有任何东西可以修改任何东西,所以 save 不会改变任何东西。
标签: python excel user-interface tkinter openpyxl