Xlsxwriter Python中的stringvariables

我对python很陌生,我正在用Tkinter编写一个程序,它可以让我在另一个excel文件中写入东西,而不必打开Excel文件。

从tkinter,我添加了一个input框,我将不得不写一个值和一个button,这将使用xlsxwriter写入Excel格式的值。

我努力了

name_entry = StringVar() name_get = name_entry.get() e1 = Entry(root, textvariable = name_entry) b1 = Button(root, text = "Create") e1.pack() b1.bind("<Button-1>", create) b1.pack() 

函数“创build”是

  def create(event): workbook = xlsxwriter.Workbook(0, "2016" + str(name_get)) worksheet = workbook.add_worksheet() worksheet.write(0, 0, 'name') worksheet.write(1, 0, str(name_get)) workbook.close 

当我运行程序并在条目中写入一些内容并按下button(b1)时,它创build的excel文件只有'name'写入row = 0和column = 0,但是我没有名字I写在行= 1和列= 0的input框中。此外,创build的文件的名称将只保存为“2016”,而不是“2016”+ str(name_get),我在条目中写入的值框。

除此之外,该程序没有任何错误

如何将input框中写入的值写入Excel文件?

另外,是否可以在xlsxwriter中创build一个excel文件的扩展名(例如.csv文件)?

非常感谢你阅读我的问题,我真的很感激一些build议!

可能还有其他的问题,但这一行是不正确的:

  workbook = xlsxwriter.Workbook(0, "2016" + str(name_get)) 

工作簿构造函数采用参数: Workbook(filename[, options])

所以这行应该可能是:

  workbook = xlsxwriter.Workbook("2016" + str(name_get)) 

另外,是否可以在xlsxwriter中创build一个excel文件的扩展名(例如.csv文件)?

没有。

XlsxWriter只能创buildxlsx文件,输出文件上的文件扩展名应该是.xlsx否则Excel会在打开文件时发生抱怨。

如果我理解正确,您正在尝试将一个stringvariables传递给worksheet.write方法。

这可以使用worksheet.write_string()方法来完成。

http://xlsxwriter.readthedocs.io/worksheet.html?highlight=write_string#write_string

恩。 –

 name_entry = '' worksheet.write_string(1,0, name_entry)