PythonとOpenpyxlを使ってExcelに書き込む方法について説明します。この記事では、セルに値を書き込む基本的な方法から、九九の表を作成する方法、さらには別のブックから読み込んだデータを書き込む方法までをカバーします。
セルに値を書き込む
まずは一番基本的な、セルに値を書き込む方法から始めましょう。以下にそのコードを示します。
import openpyxl
# ブックを取得
write_wb = openpyxl.load_workbook("Books/Book_write.xlsx")
# シートを取得
write_ws = write_wb["Sheet1"]
# セルに値を書き込む
c = write_ws["A1"]
c.value = "A1です"
# ブックを保存
write_wb.save("Books/Book_write.xlsx")
このコードは、Book_write.xlsx
というブックのSheet1
というシートのA1
というセルに"A1です"
という値を書き込み、その結果を保存します。
九九の表を作成する
次に、九九の表を作成する方法を見てみましょう。以下にそのコードを示します。
import openpyxl
# ブックを取得
write_wb = openpyxl.load_workbook("Books/Book_write.xlsx")
# シートを取得
write_ws = write_wb["Sheet1"]
# 九九の表を作成
for i in range(1, 10):
for j in range(1, 10):
write_ws.cell(row=i, column=j, value=i * j)
# ブックを保存
write_wb.save("Books/Book_write.xlsx")
このコードは、Book_write.xlsx
というブックのSheet1
というシートに九九の表を作成し、その結果を保存します。
別のブックから読み込んだデータを書き込む
最後に、別のブックから読み込んだデータを書き込む方法を見てみましょう。以下にそのコードを示します。
import openpyxl
# ブックを取得
read_wb = openpyxl.load_workbook("Books/Book_read.xlsx")
write_wb = openpyxl.load_workbook("Books/Book_write.xlsx")
# シートを取得
read_ws = read_wb["Sheet1"]
write_ws = write_wb["Sheet1"]
# データを読み込む
row_list = []
for row in read_ws.iter_rows(min_row=1, min_col=1):
value_list = []
for c in row:
value_list.append(c.value)
row_list.append(value_list)
# データを書き込む
row_num = 1
for row in row_list:
write_ws["A" + str(row_num)].value = row[0]
write_ws["B" + str(row_num)].value = row[1]
write_ws["C" + str(row_num)].value = row[2]
write_ws["D" + str(row_num)].value = row[3]
row_num += 1
# ブックを保存
write_wb.save("Books/Book_write.xlsx")
このコードは、Book_read.xlsx
というブックからデータを読み込み、そのデータをBook_write.xlsx
というブックに書き込み、その結果を保存します。
以上、PythonとOpenpyxlを使ってExcelに書き込む方法についての説明でした。この記事がPythonとOpenpyxlを使ったExcel操作の参考になれば幸いです。.