Xlsxwriter Python中的字符串变量

时间:2016-02-12 00:55:02

标签: python excel tkinter xlsxwriter

我是python的新手,我正在使用Tkinter创建一个程序,让我可以在另一个excel文件中编写内容而无需打开Excel文件。

从tkinter,我添加了一个条目框,我必须写一个值,一个按钮,它将使用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()

功能&#39;创建&#39;是

    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

当我运行程序并在条目中写入内容并按下时 按钮(b1),它创建的excel文件只有&#39;名称&#39;写的 row = 0和column = 0,但是我没有在row = 1和column = 0的输入框中写的名字。此外,创建的文件的名称将只保存为&#34; 2016&#34;,not&#34; 2016&#34; + str(name_get),我在输入框中写的值。

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

如何将输入框中写入的值写入excel文件?

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

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

2 个答案:

答案 0 :(得分:0)

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

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

Workbook constructor takes the parameters: Workbook(filename[, options])

这条线应该是:

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

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

没有。

XlsxWriter只创建xlsx文件,输出文件的文件扩展名应为.xlsx,否则Excel会在打开文件时发出错误。

答案 1 :(得分:0)

如果我理解正确,您正在尝试将字符串变量传递给worksheet.write方法。

这可以使用.page-section { border-bottom: 1px solid #ddd; overflow: hidden; } .page-section.page-section-center { align-content: center; text-align: center; } .menu-t { margin: 0; padding: 0; width: 100%; background-color: #FFF; z-index: 1000; border-bottom: 1px #eee dotted; position: static; top: auto; } .menu-t li { display: inline-block; text-align: center; padding: 20px; text-transform: uppercase; font-size: 14px; } .menu-t a { display: block; padding: 10px 0; color: #32404E !important; -webkit-transition: color ease 0.3s; -o-transition: color ease 0.3s; transition: color ease 0.3s; } .menu-t a:hover { color: #2db2e9 !important; } .menu-t.fixed { position: fixed; top: 0; } 方法完成。

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

离。 -

worksheet.write_string()