如何使用python tkinter在excel文件中追加数据

如何使用python tkinter在excel文件中追加数据,python,python-3.x,tkinter,Python,Python 3.x,Tkinter,我一直在做tkinter编程,我被困在这一点上。我想要完成的是,无论我在输入框中输入什么数据并按下按钮,这些数据都应该被添加到excel文件的特定位置。当我在同一个输入框中输入第二个数据时,应在我按下按钮后将数据填入第二列或第二行。附加第二个值时,第一个数据也应在excel中。现在,如果我输入第二个数据,第一个数据就会被删除 def btnClick(): global counter counter+=1 workbook = xlwt.Workbook(encodin

我一直在做tkinter编程,我被困在这一点上。我想要完成的是,无论我在输入框中输入什么数据并按下按钮,这些数据都应该被添加到excel文件的特定位置。当我在同一个输入框中输入第二个数据时,应在我按下按钮后将数据填入第二列或第二行。附加第二个值时,第一个数据也应在excel中。现在,如果我输入第二个数据,第一个数据就会被删除

def btnClick():
    global counter
    counter+=1
    workbook = xlwt.Workbook(encoding="utf-8")
    sheet1 = workbook.add_sheet("python sheet1")
    sheet1.write(0,counter,Ent1.get())
    workbook.save("PythonTest")
    print("Created")

我使用下面的代码来说明这里的错误,因此发生的情况是每个BTN单击它重新创建PythonTest.xlsx,如果您尝试在下面的代码中执行最终输出,请在excel中输入数字4,因为我调用了
btnclick()
方法4次

import xlwt

counter = 0


def btnClick():
    global counter
    counter += 1

    workbook = xlwt.Workbook(encoding="utf-8")
    sheet1 = workbook.add_sheet("python sheet1")
    sheet1.write(0, counter, counter) # added counter to write
    workbook.save("PythonTest.xlsx")
    print("Created")


btnClick()
btnClick()
btnClick()
btnClick()

如果我改变代码如下

import xlwt

counter = 0

workbook = xlwt.Workbook(encoding="utf-8")
sheet1 = workbook.add_sheet("python sheet1")

def btnClick():
    global counter
    counter += 1
    sheet1.write(0, counter, counter)
    print("Created")


btnClick()
btnClick()
btnClick()
btnClick()

workbook.save("PythonTest.xlsx")

输出excel将有1、2、3、4。我想告诉您的是,在输入每个数据后,您应该
close()
workbook.save(“PythonTest.xlsx”)
)工作簿。或者,如果没有,您应该使用其他一些可以读取现有或创建的excel的库,比如:openpyxl来读取和添加每个按钮的点击


您应该使用btn单击方法创建并关闭工作簿

谢谢,这很有效,谢谢您帮助我。干杯