0

私はかなり経験の浅いプログラマーであり、Excel で動作する Python ライブラリである Xlwings でいくつかの基本を練習しようとしています。私は2.7で働いています。

Excelの列にエントリを簡単に追加できるGUIを備えた小さなプログラムを作成しました。プログラムを試してみると、以前に保存した値が列に上書きされることにすぐに気付きました。範囲を特徴とするリストから始めて、それに追加し続ける方法について、実行可能な解決策を見つけるのに完全に迷っています。

from Tkinter import *
from xlwings import Workbook, Range

root = Tk()
wb = Workbook()

e1 = Entry()
e1.grid(row=1, column=2)

participant_list = [] 
"""I realize starting with an empty list will clear the range every time I
run the script, but am not sure what the correct solution should be."""

def pressed_button():

    entry = e1.get()
    e1.delete(0, END) # clear the entry widget
    temp = []
    temp.append(entry)
    participant_list.append(temp)
    Range('A1').value = participant_list
    print participant_list # just to test

b1 = Button(text="Add Participant", command=pressed_button)
b1.grid(row=2, column=2)

mainloop()

解決策を教えていただけると助かります。私はいくつかの異なることを試しましたが、あまりにも恥ずかしくてデモ コードに入れることができません。

4

1 に答える 1

0

やりたいことに応じて、最初にデータを読み込んで割り当てるかparticipant_list、その列で最後に使用されたセルを見つけることができます。たとえば、空の行がない場合は、次のようになります。

rng = Range('A1').vertical.last_cell
...
Range((rng.row + 1, rng.column)).value = participant_list

働くことができました。

于 2016-02-10T20:33:39.680 に答える