読み方 : オープンパイエクセル

openpyxl

openpyxlとは?

PythonからExcelファイル(.xlsx形式)を読み書き、編集するための外部ライブラリExcel本体がインストールされていない環境でも動作し、表計算ファイルの自動生成や業務データの集計、帳票出力などに広く活用されている。
openpyxlのイメージ画像

対応するファイル形式は、Microsoft Office 2007以降で採用されたOpen XML形式に限られる。.xlsx形式や.xlsm形式などが対象であり、それ以前の旧形式である.xls形式などは扱えない。旧形式を処理する場合は別のライブラリを用いる必要がある。

Pythonのパッケージとしてpipインストールできる。オープンソースとして公開されており、個人利用、商用の別を問わず無償で利用できる。WindowsだけでなくLinuxやmacOSでも動作するため、サーバ上での定期実行や自動処理システムへの組み込みにも適している。

基本的な操作はワークブック、ワークシートセルという階層構造に沿って行う。ワークブックを開くか新規作成し、対象のシートを選択してから、「A1」や「B3」のような座標でセルを指定して値を読み書きする。文字列や数値、日付のほか、Excelと同じ書式の数式を書き込むことができ、Excel上で再計算させることができる。シートの追加や削除、名前変更、順序変更にも対応しており、既存ファイルを読み込んで編集、上書き保存するという使い方も一般的である。

書式設定の機能も充実しており、フォントの種類、文字サイズ、文字色、太字の指定、セルの背景色、罫線の設定、列幅や行高さの調整などが行える。グラフの作成や画像の挿入にも対応し、データを格納するだけでなく、整形されたレポートをプログラムから生成する用途にも用いられる。ただし、Excelアプリケーション自体を制御する仕組みではないため、マクロの実行など一部の機能には制限がある。

データ量が多い場合は、読み取り専用モードや書き込み専用モードを利用することでメモリ消費を抑えられる。また、「pandas」など他のPythonライブラリと組み合わせてデータ解析結果をExcel形式で出力する用途にも多く使われる。業務環境でExcelデータ共有の標準形式として定着しており、CSV形式などでは再現できない書式情報や複数シート構成を保持したい場合などによく利用される。

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。