2017-03-29 3 views
-1

私はxlsxファイルを持っていて、openpyxl内に1カラムを追加する必要があります。 私に助けてもらえますか?このようなopenpyxlを使用して既存のxlsxカラムを新しいカラムにコピーする方法

何か:

wb = load_workbook('wb.xlsx') 
ws = wb.active 

wb2 = workbook() 
ws2 = wb2.active 

row = 0 

while row < nrows: 
     newVal = ws.cell_value(row, 2) 
    ws2.write(row, 3, newVal) 
    row = row + 1 
write_book.save('wb_with_new_column') 
+0

問題はどのような面で問題がありますか? –

答えて

0

あなたが別の列に1列の内容をコピーしようとしているように見えます。これは次のように簡単に行うことができます。

import openpyxl 

wb = openpyxl.load_workbook('file1.xlsx') 
ws = wb.active 

for src, dst in zip(ws['B:B'], ws['C:C']): 
    dst.value = src.value 

wb.save('file1.xlsx') 

openpyxlはiterate over cellsにあなたを可能にします。ここで、反復処理を行うセルのソースとデスティネーションの範囲を作成します。 zip()を使用してそれらをペアにすると、必要なのは単純な値のコピーだけです。

関連する問題