2017-02-03 46 views
1

これを長時間実行した後。XlsxWriter式セルに書式設定

私は数式を書いた、または数式を書いているセルの書式をどのように設定しますか?

write_formula()以外のすべてのwrite_()には、formatパラメータが含まれています。例えば

ws.write_number(1,1,quantity, fmt) 
ws.write_number(1,2,price, fmt) 
# ws.write_formula("C1","=A1*B1",fmt) <-- doesn't exists 
ws.write_formula("C1","=A1*B1") 

答えて

1

この作品:

extendedprice = (quantity*price) 
ws.write_formula("C1", "=A1*B1", extendedprice, fmt) 

私も私ができる考え出し:

ws.write_number(1,1,quantity, fmt) 
if (<price has an error>): 
    ws.write_number(1,2,"n/a",fmt) 
    ws.write_formula("C1", "=A1*B1", "n/a", fmt) 
else: 
    ws.write_number(1,2,price,fmt) 
    ws.write_formula("C1", "=A1*B1", (quantity*price), fmt) 
0

フォーマットでXlsxWriterと式に適用することができます他のデータ型と同じ方法:

import xlsxwriter 

workbook = xlsxwriter.Workbook('test.xlsx') 
worksheet = workbook.add_worksheet() 

my_format = workbook.add_format({'bold': True, 'color': 'red'}) 

worksheet.write(0, 0, 'Hello', my_format) 
worksheet.write(1, 0, 123,  my_format) 
worksheet.write(2, 0, '=1+1', my_format) 

worksheet.write('A4', 'World', my_format) 
worksheet.write('A5', 456,  my_format) 
worksheet.write('A6', '=2+2', my_format) 

workbook.close() 

出力:

enter image description here