2016-07-10 5 views
0

Nach einem langen Tag mit vielen Varianten zu spielen ich mit diesem Code übrig war:XLS mit Formel in mehr als eine Zelle innerhalb einer Spalte mit Python

from xlrd import open_workbook 
from xlwt import Workbook, Formula 
from xlutils.copy import copy 

rb = open_workbook("test.xls") 
wb = copy(rb) 

s = wb.get_sheet(0) 
s.write(2,4, Formula('D3-B3')) 
wb.save('test.xls') 

Dies funktioniert eine XLSfile bearbeiten und mir erlaubt, zu betreten eine Formel in einer Zelle. Jetzt bin ich fest, wie kann ich eine Spalte bearbeiten, um eine Formel in die mehr als eine Zelle, die zu jeder Zelle in der Spalte mit den Daten aus den Zellen in dieser Zeile fortsetzen würde, wie ich mit D3-B3 die Zeile Zahl würde jede Zelle ändern, um mit dieser Zeile übereinzustimmen.

Antwort

1

Mit einer einfachen Schleife:

s = wb.get_sheet(0) 
last_row = 10 # change to your last required row 
for i in range(4, last_row + 1): 
    s.write(2, i, Formula('D{row}-B{row}'.format(row=i-1))) 
wb.save('test.xls') 
Verwandte Themen