2016-04-26 10 views
1

列を塗りつぶす機能はありますか?私はC2に数式を書いて、それをデータの最後まで埋めたいと思っています。私はこれを行う簡単な方法があると思うが、私はまだグーグルで何も見つけていない。どんな助けもありがとう!xlsxwriterを使用して塗りつぶす方法

worksheet.write(1,2, '=IF(ISNUMBER(SEARCH("21",B2)),"x","")') 

これは、私がC2を埋めなければならないコードです。それから、私はその数式が満たされるようにB2を調整することを記入します。 Excelのセルの右下隅をダブルクリックした場合と同じように。

+0

にあなたのデータは何フォーマットですか?あなたが助けが必要な場合は、より多くの情報を与える必要があります...サンプルコードも良いでしょう。 – flyingmeatball

+0

私はさらに情報を追加しました。これはかなり簡単な質問です。私は答えを見つけることができないようです。ありがとう。 – Wes

+0

あなたはこれをパンダではるかに簡単に行うことができます - それはフォワードフィルメソッド(df.ffill)を持ち、エクセルメソッド(df.to_excel)への書き込みを持っています。私は既にあなたがパンダにそのデータを持っているかどうかを確認するように頼んだ。そうでない場合は、pandasデータフレームに変換してから、これらの2つの機能を適用しても問題ありません。 – flyingmeatball

答えて

0

あなたが単純なループとXlsxWriter utility機能のいずれかを使用してこれを行うことができます:

import xlsxwriter 
from xlsxwriter.utility import xl_rowcol_to_cell 

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

for row_num in range(1, 10): 
    cell = xl_rowcol_to_cell(row_num, 1) 
    formula = '=IF(ISNUMBER(SEARCH("21",%s)),"x","")' % cell 
    worksheet.write(row_num, 2, formula) 

workbook.close() 
+0

投稿した直後にこの解決策をとることにしました。私の意見で一緒に投げられたものの、仕事はうまくいく。 – Wes

+0

答えが正解で、それがあなたが使用した解決法であれば、それを受け入れたものとしてマークする必要があります。 – jmcnamara

関連する問題