【Python】Excelを読み書きできるopenpyxlのインストール

【Python】Excelを読み書きできるopenpyxlのインストール プログラミング

「プログラムでエクセルファイルを処理したい」
「PythonでExcelファイルの読み込みに対応したい」
「PythonでExcelファイルの書き込みを行いたい」

このような場合には、openpyxlがオススメです。
この記事では、PythonでExcelを読み書きできるopenpyxlについて解説しています。

本記事の内容

  • openpyxlとは?
  • openpyxlのシステム要件
  • openpyxlのインストール
  • openpyxlの動作確認

それでは、上記に沿って解説していきます。

openpyxlとは?

openpyxlとは、Excelファイルの読み込み・書き込みが可能なPythonライブラリです。
処理対象となるファイル形式は、以下となっています。

  • xlsx
  • xlsm
  • xltx
  • xltm

openpyxlは、もともとPHPExcelを参考に開発が始まったようです。
PHPExcelは、PHPでエクセルファイルを扱うためのライブラリになります。

そのPHPExcelについては、次の記事で触れています。

PythonでExcelファイルを扱うなら、真っ先にその候補となるのがopenpyxlです。
それぐらい、openpyxlはPython界では確固たる地位を築いています。

以上、openpyxlについて解説しました。
次は、openpyxlのシステム要件を説明します。

openpyxlのシステム要件

現時点(2022年7月)でのopenpyxlの最新バージョンは、3.0.10となります。
この最新バージョンは、2022年5月20日にリリースされています。

openpyxlのシステム要件としては、次の3点を意識すればよいでしょう。

  • OS
  • Pythonバージョン
  • Pillow

それぞれを下記で説明します。

OS

サポートOSに関しては、以下を含むクロスプラットフォーム対応です。

  • Windows
  • macOS
  • Linux

Pythonバージョン

サポート対象となるPythonのバージョンは、以下となっています。

  • Python 3.6
  • Python 3.7
  • Python 3.8
  • Python 3.9

以下のPython公式開発サイクルとは、少しだけ違います。

バージョンリリース日サポート期限
3.62016年12月23日2021年12月23日
3.72018年6月27日2023年6月27日
3.82019年10月14日2024年10月
3.92020年10月5日2025年10月
3.102021年10月4日2026年10月

公式開発サイクルと比較すると、次のようにするのがベストでしょう。

  • Python 3.6をサポート対象から切り捨てる
  • Python 3.10をサポート対象に含める

と言っても、Python 3.10へのインストールは何も問題ありません。
基本的には、Python 3.9で動くならPython 3.10でも動きます。

Pillow

画像を扱う場合に、必要となるPythonライブラリです。
画像を扱う予定がなくても、とりあえずインストールしておくのをオススメします。

Pillowについての詳細は、次の記事で解説しています。

インストールするには、次のコマンドだけでOKです。

pip install pillow

以上、openpyxlのシステム要件を説明しました。
次は、openpyxlのインストールを説明します。

openpyxlのインストール

検証は、次のバージョンのPythonで行います。

$ python -V
Python 3.10.2

まずは、現状のインストール済みパッケージを確認しておきます。
Pillowは、インストール済みです。

$ pip list
Package    Version
---------- -------
Pillow     9.2.0
pip        22.1.2
setuptools 63.1.0
wheel      0.36.2

次にするべきことは、pipとsetuptoolsの更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。

python -m pip install --upgrade pip setuptools

では、openpyxlのインストールです。
openpyxlのインストールは、以下のコマンドとなります。

pip install openpyxl

openpyxlのインストールは、すぐに終わります。
終了したら、どんなパッケージがインストールされたのかを確認します。

$ pip list
Package    Version
---------- -------
et-xmlfile 1.1.0
openpyxl   3.0.10
Pillow     9.2.0
pip        22.1.2
setuptools 63.1.0
wheel      0.36.2

依存するパッケージは、思ったより少ないと言えます。
その意味では、既存環境へ容易にopenpyxlを導入できそうです。

以上、openpyxlのインストールを説明しました。
次は、openpyxlの動作確認を説明します。

openpyxlの動作確認

openpyxlでXLSXファイルを作成しましょう
その動作確認のために、次のコードを用います。

from openpyxl import Workbook
wb = Workbook()

# アクティブなワークシートの取得
ws = wb.active

# セル指定によるデータ設定
ws['A1'] = 999

# 行追加
ws.append([1, 2, 3])

# セル指定によるデータ設定
ws['A3'] = "openpyxlの動作確認"

# ファイル保存
wb.save("test.xlsx")

上記を実行した結果、test.xlsxが作成されます。
処理は、一瞬で終わります。

test.xlsxをエクセルで確認します。

コードで意図したようにファイルが作成されています。
日本語も問題ありません。

以上、openpyxlの動作確認を説明しました。

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