“PythonのOpenpyxlを使用したExcelファイルの作成、読み込み、シート追加、および複数セルへのデータ書き込み方法”

python

概要

Openpyxlは、PythonでExcel 2010 xlsx / xlsm / xltx / xltmファイルを読み書きするためのライブラリです。

また、各種Excelの機能をサポートしています。

例えば、数式、グラフ、イメージ、セルの書式設定など、一部の機能を除いて、Excelのデータを自由自在に操作することが可能です。

もちろん、Excelがインストールされていない環境でも利用できるのが特徴的です。

これから具体的に使い方を見ていきましょう。

詳細内容

ここでは、Openpyxlを使ったExcelの操作をいくつかの例で見ていきましょう。

1. xlsファイルの読み込みと書き込み

from openpyxl import Workbook# Workbookを新規作成
wb = Workbook()# Workbookがデフォルトで持つシートを取得
ws = wb.active# セルへの値の設定
ws['A1'] = 'Hello'
ws['B1'] = 'World'# Workbookの保存
wb.save('sample.xlsx')

このコードはまず、Workbookのインスタンスwbを作成します。

次に、wbのアクティブなシートを取得し、wsとして保持します。

その後、A1とB1にそれぞれHelloとWorldを書き込み、’sample.xlsx’という名前で保存します。

2. 既存のxlsファイルの読み込み

from openpyxl import load_workbook# Excelファイルを開く
wb = load_workbook('sample.xlsx')# アクティブなシートを取得
ws = wb.active# セルから値を取得
print(ws['A1'].value)  # Hello
print(ws['B1'].value)  # World

このコードでは、まず’load_workbook’関数を使って既存のExcelファイル’sample.xlsx’を開きます。

次にアクティブなシートを取得し、A1とB1のセルの中身を表示します。

3. xlsファイルに新たなシートの追加

from openpyxl import Workbookwb = Workbook()# 新規のシートを作成
ws2 = wb.create_sheet('NewSheet')# 新規シートに値を設定
ws2['A1'] = 'Hello'
ws2['B1'] = 'New World'# 保存
wb.save('sample2.xlsx')

このコードでは、まず新しいWorkbookを作成します。

次に’create_sheet’メソッドを使って新しいシートを作成し、some_valueを設定します。

最後に保存します。

4. xlsファイルの複数セルへのデータの書き込み

from openpyxl import Workbookwb = Workbook()
ws = wb.active# 複数セルへの値の設定
data = [
  ['Hello', 'World'],
  ['Python', 'Openpyxl'],
]for i, row in enumerate(data):
  for j, value in enumerate(row):
    ws.cell(row=i+1, column=j+1, value=value)wb.save('sample3.xlsx')

最後のコードでは、2次元リストdataを用いて複数行・複数列へのデータの書き込みを行います。

enumerate関数を用いて、行と列のインデックスを取得し、その位置に対応するセルに値を設定します。

以上、Openpyxlを使った基本的なExcel操作の例を見てきました。

このライブラリを使えば、PythonでExcelファイルを自由に操作することが可能です。

コメント

タイトルとURLをコピーしました