毎月売り上げデータをまとめているのですが、元のデータの表と上司に提出するための表の形式が異なっているので、表の形式の変換をやりたいと考えています。
添付したExcelファイルのまとめ_理想タブのように各届け先の品名ごとに数量、売上、利益をまとめたいのですが、読み取って列ごとに別タブに書き出しするまでしかできておりません。
知識が少なく申し訳ありませんが、うまく作成できる変換できる方法をご教授お願いいたします。
python3.7
1 2import openpyxl 3 4workbook = openpyxl.load_workbook('sample1.xlsx') 5sheet = workbook["Sheet1"] 6 7 8#得意先を集計 9tokuisaki = [] 10 11for i in range(2,8): 12 cell_value = sheet.cell(row=i, column=1).value 13 tokuisaki.append(cell_value) 14 15 16#届け先を集計 17todokesaki = [] 18 19for j in range(2,8): 20 cell_value = sheet.cell(row=j, column=2).value 21 todokesaki.append(cell_value) 22 23#品名を集計 24hinmei = [] 25 26for k in range(2,8): 27 cell_value = sheet.cell(row=k, column=3).value 28 hinmei.append(cell_value) 29 30 31#数量をまとめる 32suryo = [] 33 34for l in range(2,8): 35 cell_value = sheet.cell(row=l, column=4).value 36 suryo.append(cell_value) 37 38 39#売上をまとめる 40uriage = [] 41 42for m in range(2,8): 43 cell_value = sheet.cell(row=m, column=5).value 44 uriage.append(cell_value) 45 46#利益をまとめる 47rieki = [] 48 49for n in range(2,8): 50 cell_value = sheet.cell(row=n, column=6).value 51 rieki.append(cell_value) 52 53 54ns = workbook.create_sheet("まとめ") 55ns["A1"]="得意先" 56ns["B1"]="届け先" 57ns["C1"]="品名" 58 59for i,j,k,l in zip(list(range(2,8)),tokuisaki,todokesaki,hinmei): 60 ns.cell(row=i,column=1,value=j) 61 ns.cell(row=i,column=2,value=k) 62 ns.cell(row=i,column=3,value=l) 63 64workbook.save('sample1.xlsx') 65 66
回答1件
あなたの回答
tips
プレビュー