OpenPyXL㉔ (レコード単位で入力)

レコード単位で入力

レコード単位で複数のデータを入力するためには、Worksheetオブジェクトの appendメソッド を使います。

まずは1行分のレコードをタプルで定義し、これを1つのリストにまとめます。

そのあとリストに設定した1レコード分のデータ(タプル)をforループで取得し、appendメソッドの引数に設定します。(22~23行目)

[Google Colaboratory]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import openpyxl

rows = [
('月', '商品1', '商品2'), # タイトル行
(1, 320, 435), # 12行のレコードデータ
(2, 130, 530),
(3, 440, 60),
(4, 550, 770),
(5, 260, 410),
(6, 370, 640),
(7, 580, 630),
(8, 625, 430),
(9, 720, 230),
(10, 580, 340),
(11, 670, 450),
(12, 605, 755),
]

book = openpyxl.Workbook() # ブックを生成
sheet = book.active # アクティブなシートを取得

for row in rows: # 行数の数だけ繰り返す
sheet.append(row) # ワークシートに追加する

book.save('Test.xlsx') # ブックを保存

[Test.xlsx]

保存したExcelファイルを確認すると、リストに定義したデータがすべて入力されていることを確認できます。