質問: sheet['A' + str(row)].value new_book= openpyxl.Workbook(desengrasante) new_book.save('nuevo.xlsx')
回答: 以下の部分が怪しいです。openpyxl.Workbook()は本来新規excelを作るくらいのことしかできず、セルへの書き込みはできません。 ``` new_book= openpyxl.Workbook(desengrasante) #本来の使い方 new_book= openpyxl.Workbook() ``` 改善案としては愚直にfor文でセルに書き込んでいくのが良いかと思います。サンプルコードを以下に示します。 ``` import datetime, openpyxl wb = openpyxl.load_workbook('LOG00001_20180918_025345_0426.xlsx', data_only = True) sheet = wb['LOG00001_20180918_025345_0426'] idDict = {} now = datetime.datetime.now() desengrasantes=[]#書き込み用の空リスト作成 for row in range(16, sheet.max_row + 1): desengrasantes.append(sheet['C' + str(row)].value)#値をリストとしてまとめる Ni =float(sheet['D' + str(row)].value) time = sheet['A' + str(row)].value #新規excelの作成 new_book= openpyxl.Workbook() new_book_s=new_book['Sheet'] #新規excelのセルに値を書き込む for i, desengrasante in enumerate(desengrasantes):#インデックス番号(セルの行番号設定用)も同時に取得 cell='A'+str(i+1)#書き込み先セルの設定 new_book_s[cell].value = desengrasante#値を書き込む new_book.save('nuevo.xlsx') ``` エクセル操作については、以下の記事もご参考ください。 参考記事:Python openpyxlでExcelを操作