2017-03-21 10 views
1

私は9行(B3:3列目のJ3)のデータを扱い、B1325:J1325まで伸びています。 PythonとOpenpyxlライブラリを使って、各行の最大値と2番目に大きな値を取得し、それらを同じ行の新しいフィールドに出力する必要があります。私は既に単一のフィールドに値を手動で割り当てましたが(見出し)、新しいフィールドに自動的に書き込まれた範囲で最大値を取得できないようです。私のコードは次のようになります。Excelファイル内のアイテムをPythonのOpenpyxlと比較する

for row in ws.rows['B3':'J3']: 
sumup = 0.0 
for cell in row: 
    if cell.value != None: 
    ......... 

それはエラーがスローされます。

for row in ws.rows['B3':'J3']: 
TypeError: 'generator' object has no attribute '__getitem__' 

私はここに私の目標に得ることができる方法は?

+0

は 'WS [ 'B3:J3']を試してみてください' ... –

答えて

0

あなたはあなたが望むことを行うためにiter_rowsできますか?

このお試しください:詳細は、この答えをチェックしてください

for row in ws.iter_rows('B3':'J3'): 
    sumup = 0.0 
    for cell in row: 
     if cell.value != None: 
     ........ 

を: How we can use iter_rows() in Python openpyxl package?

関連する問題