【業務自動化】チャプター1-1|openpyxlのインストールと初期設定

ながみえ

「Excel自動化学習:Chapter1」では、Python初心者でも「Excelの簡単な作業をPythonで自動化できる」状態を最短で目指します。

第1章であるこの記事では、openpyxl というPythonの標準ライブラリのインストール&動作確認手順を丁寧に解説。

Excelは普段から使っており、Pythonの基礎も習得済み――そんな方を想定しています。

もしまだPythonの基礎を習得していない場合は、このサイトでは全て無料で学習できるので、まずはPythonの学習から始めましょう↓↓

あわせて読みたい
【完全無料】Python初心者向け完全ガイド|ゼロから学ぶ基本文法と実践課題
【完全無料】Python初心者向け完全ガイド|ゼロから学ぶ基本文法と実践課題

Chapter1:PythonでExcelを操作しよう
 ・Chapter1-1:openpyxlとは何か|インストールと動作確認 ◁今回はここ
 ・Chapter1-2:PythonでExcelファイルを作成しよう
 ・Chapter1-3:Excelシートからデータを読み込もう
 ・Chapter1-4:Excelシートにデータを書き込もう
 ・Chapter1-5:データを新規シートへ自動振り分けしよう
 ・Chapter1-6:簡単なExcel自動化を体験しよう
Chapter2:PyInstallerで自動化ツール(.exe)を作ろう
Chapter3:ファイル・フォルダを操作しよう
Chapter4:メール送信を自動化しよう
Chapter5:Webスクレイピング

<<前のページ

業務自動化の記事一覧

次のページ>>

openpyxlとは|Excel自動化する基本とVBAとの違い

openpyxlは、PythonからExcelの.xlsx/.xlsmファイルを読み書き・編集するための定番ライブラリです。

PCにExcelが入っていなくても動作し、Windows・macOS・Linuxで利用できます。

openpyxlを使用することで、ルーチン作業(集計・整形・転記など)をコード化できるため、手作業のミスや作業時間を大幅に削減できるようになります。

【Python】勉強猫がノートパソコンを前にして学習を始める様子。記事内の学習スタート用イラスト

openpyxlで何ができるのか|主な機能のイメージ

openpyxlはExcelブックやシート、セルの操作を中心に、よく使う事務作業を自動化できます。

以下に代表的な機能をまとめます。

  • 新規ブック/シートの作成、既存ファイルの読み込み・保存
  • セルの値・数式の読み書き、書式設定(フォント、罫線、色、列幅・行高)
  • 行/列の挿入・削除、セル結合、オートフィルター、ウィンドウ枠の固定
  • 条件付き書式、データ検証(プルダウンの設定)
  • テーブルやグラフの作成、画像の貼り付け
  • 大量データの高速書き出し(書き込み専用モードの活用 など)

そして、Chapter2以降で学習するPyInstallerなどを使いこなすと、最終的に以下のようなことができるようになります。

  • 日次レポートの完全自動化:Webからデータ取得 → openpyxlでテンプレに反映・グラフ更新 → メールに自動添付して自動送信。
  • フォルダ監視型の集計業務:指定フォルダに置かれた複数のExcelを読み込み → 1冊に統合 → テーブル化・条件付き書式適用 → 完了ファイルを出力。
  • 帳票の一括生成・配布:部署別や顧客別にテンプレへ差し込み → ファイル名規則で連番出力 → ZIP化や配布先フォルダへ自動仕分け。
  • バッチ実行&配布:PyInstallerで実行ファイル化(.exe等)し、Python未導入のPCでもワンクリック実行。社内共有や引き継ぎが容易に。

このレベルに到達すると、「毎朝の手作業60分」が0分になり、属人化した “あのExcel作業” を誰でも再現できる仕組みへ置き換えられます。

ポイントは「データを集める → 整形する → 配る」を自動でできるようになるということです。

使い始める前に知っておきたい制限

万能に見えるopenpyxlにも、得意不得意があります。

事前に把握しておくと、設計ミスを避けられます。

  • .xls(旧形式)は直接扱えない:基本は.xlsxに保存してから操作
  • 計算はしない:数式は書けますが再計算はExcel側の役割
  • VBAは実行できない:.xlsm内のマクロは保持できるが、動かすのはExcel

VBA(マクロ)と比較|まずはopenpyxlを選ぶべき理由

Excel自動化の手段としてはVBA(マクロ)が有名ですが、当サイトではopenpyxlを選択することを推奨します。

同じ “Excel自動化” でも、実務での安定運用・拡張性・配布のしやすさを総合すると、基本的にはopenpyxlの方が優れています。

Excelアプリに依存せず、Windows/Macのどちらでも動き、Web/APIやメール送信、ファイル操作などExcelの外側まで含めた業務フロー全体をPython一つで完結できるからです。

観点openpyxl(Python)推奨ポイントVBA(Excelマクロ)
実行環境Excel不要・クロスプラットフォームで安定Excel必須・主にWindows依存
外部連携Web/API/DB/メール/スクレイピング等と自在に統合連携は限定的・実装難度が上がりがち
配布・運用スクリプト配布やPyInstallerで実行ファイル化が容易ブック配布中心・マクロ警告やポリシー制約が障壁
セキュリティマクロ制限の影響を受けにくい組織ポリシーでブロックされやすい
大量データバッチ処理・並列化・他ライブラリ活用が得意ExcelのUI前提で重くなりやすい
テスト/保守Pythonのテスト基盤とGit運用がしやすいテスト自動化や差分管理が相対的に難しい

Excel画面上でのボタン1つの簡易操作や、既存のExcel機能(フォーム・アドイン)に深く依存するケースではVBAのほうが手早いこともあります。

一方で、レポート自動作成・データ統合・定時メール配信のように「集める→整形→配る」までの「大きな自動化」をするなら、openpyxl+Pythonが適しています。

openpyxlの弱点はツール作成時に「Pythonの基礎知識が必要」である点のみです。

この学習コストを許容できるのであれば、openpyxlを選択しましょう。

【Python】勉強猫がノートパソコンを見ながら考え込む様子。記事内の休憩用イラスト

インストールする前に確認するべきこと

この節ではopenpyxlを入れる前段階として、Python本体が動くか、そしてパッケージ管理ツールであるpipが使えるかを確認します。

ここでつまずくと以降すべての手順が進まないため、最初に環境を確実に整えておきましょう。

確認は3ステップ──「ターミナルを開く → Pythonのバージョン確認 → pipのバージョン確認」です。

1) ターミナル/コマンドプロンプトを開く

まずは “コマンドを実行する画面” を開きます。

WindowsならコマンドプロンプトまたはPowerShell、macOSならターミナルです。社内PCでも基本的に開けます。

  • Windows:スタートメニューで「cmd」または「PowerShell」と検索して起動
  • macOS:Launchpad → その他 → ターミナル(Spotlightで「terminal」検索でもOK)

2) Pythonが入っているか(バージョン)を確認

次に、Pythonが正しく呼び出せるかを確認します。

コマンドプロンプトかターミナルに以下のコードを打ち込み、実行しましょう。

OSやセットアップによってコマンド名が異なるため、上から順に試してください。

# Windows(Pythonランチャーが入っている場合)
py --version

# 共通(Windows/macOS)
python --version

# macOSでよく使う呼び出し方
python3 --version

正しくPythonが入っていれば、例えば以下のように出力されるはずです。

Python 3.11.6

表示される数字は環境によって異なりますが、基本的に3系(3.x)であれば本講座は進められます。

何も表示されない/エラーになる場合は、Pythonが未インストールかPATH設定に問題がある可能性があります。

3) pipが使えるか(バージョン)を確認

openpyxlのインストールにはpipを使います。

先ほどと同様に、コマンドプロンプトかターミナルに以下のコードを打ち込みましょう。

# 最も確実な呼び方(Pythonに紐づくpipを明示)
python -m pip --version

# WindowsのPythonランチャー経由
py -m pip --version

# 直接呼べる場合(環境により pip3 のことも)
pip --version
pip3 --version

正しくpipが使用できる場合は、例えば以下のように出力されます。

pip 24.2 from .../site-packages/pip (python 3.11)

カッコ内のpython 3.xxの数字が、先ほど確認したPythonのバージョンと一致しているかもチェックしましょう。

仮想環境(venv)を使う予定の方は、以降もpython -m pipの形式で進めると、Pythonの取り違えを防げます。

【Python】勉強猫がコーヒーを片手にリラックスしている様子。記事内の休憩用イラスト

【初心者向け】openpyxlのインストールと動作確認

この章ではopenpyxlをインストールと動作確認を行います。

手順1:openpyxlをインストールする(pip)

まずはpipでopenpyxlを導入します。

WindowsでPythonランチャーを使っている方は2行目のコマンドでもOKです。どちらか一方を実行してください。

pip install openpyxl

# WindowsのPythonランチャー経由の場合
py -m pip install openpyxl

手順2:インストールできたかを確認する(pip list)

次に、openpyxlがインストール済みかを一覧表示で確認します。

以下のコードを打ち込んで実行しましょう。

pip list

実行結果の中にopenpyxlの行があれば正常にインストールされています。

最後に、実際にライブラリを読み込み、新しいExcelブックを作成できるかを試しましょう。

以下のコードはopenpyxlを使って実際にExcelを操作するコードの一部です。

import openpyxl  # openpyxlをインポート

new_book = openpyxl.Workbook()      # Workbookのインスタンスを作成
print(new_book.sheetnames)          # シート名の一覧を表示(例:['Sheet'])

このコードを実行し、結果として [‘Sheet’] などと出力されればopenpyxlが正しく動作したと言えます。

このコードの意味は今後学習していくとして、まずは動作することを確認しましょう。

まとめ|Excel自動化の準備完了

openpyxlのインストールと動作確認まで終えた今、あなたのPCはPythonでExcelを自在に操れる状態になりました。

手作業で行っていた転記や整形、集計は、これから再現可能なスクリプトへと置き換えられます。

大切なのは「コードを書いて終わり」ではなく、業務の結果を安定して出せる仕組みにしていく視点です。

この先の学習では、ブック/シートの基礎操作から読み込み・書き込み、コピペ自動化、そして小さな自動化フローの構築へと進みます。

準備は整いました。

次の節からは、実際のExcelファイルを操作しながら「手作業→コード」の変換思考を身につけていきます。

今日のあなたの10分が、明日の1時間を生み出します。さあ、次へ進みましょう。

もっと分かりやすい学習サイトにするために

この記事を読んで「ここが分かりにくかった」「ここが難しかった」等の意見を募集しています。

世界一わかりやすいExcel自動化学習サイトにするため、ぜひ 問い合わせフォーム からご意見下さい。

<<前のページ

業務自動化の記事一覧

次のページ>>

記事URLをコピーしました