MENU
  • 当ブログについて
しんげつBlog🌑
  • 当ブログについて
しんげつBlog🌑
  • 当ブログについて
  1. ホーム
  2. プログラミング
  3. Python
  4. 超簡単!Pythonプログラミングでエクセルを操作する方法

超簡単!Pythonプログラミングでエクセルを操作する方法

2025 9/10
広告
プログラミング Python
2025年6月1日2025年9月10日
HATOBA

こちらの記事は中級者向けの内容となっています。

  • Pythonを使って業務の効率UPにつなげたい
  • VBAよりもPythonの豊富なライブラリを便利に活用したい!

といった要望があってこちらのブログにいらしたでしょうか?
お任せください!本記事ではOpenpyxlの使い方を簡潔に説明しております。

初心者向けの情報、Pythonのインストール方法について知りたいという方は
ぜひこちらの記事を読んでみてください↓

あわせて読みたい
【初心者向け】Pythonとは?現役エンジニアが徹底解説。 – しんげつBlog🌑
HATOBA

こんにちは。この記事を書いたHATOBA(はとば)です。

  • 開発経験5年以上のエンジニア
  • 大学時代に勉強~現場での業務経験もあり
  • プログラミング、論理思考が得意
目次

✅ Pythonからのエクセル操作はこんなに簡単!

Pythonを使うと、手作業で行っていたエクセルの作業を自動で進められるようになります。
たとえば、表の作成や計算、文字の入力などを一瞬で済ませることが可能です。

なぜこれが便利かというと、毎回同じような作業をくり返す必要がなくなるからです。
特に皆さんが、名簿や一覧表を作るときなどに役立ちます。

ポイントとしては、次のようなことができます。

  • 同じ形の表をすぐに作成できる
  • たくさんのデータを自動で整理できる
  • 作業ミスを減らすことができる

Pythonは初めてでもやさしく学べますので、心配はいりません。
これから順番にエクセル操作のやり方を紹介いたします。

✅ PythonとOpenpyxlの準備方法

Pythonでエクセルを操作するには、「Openpyxl」というライブラリを入れる必要があります。
これがないと、エクセルに命令を出すことができません。

その手順は以下のとおりです。

Openpyxlを入れるやり方

pip install openpyxl

これをコマンドライン上で打つだけです。
たったこれだけで、準備は完了します。

✅ Openpyxlでエクセルファイルを作る

PythonとOpenpyxlが使えるようになったら、いよいよエクセルファイルを作成してみましょう。

まずは新しいエクセルファイルを作って、そこに文字を書いてみる流れを紹介します。
思っているよりもずっとかんたんです。

新しいエクセルファイルの作り方

はじめに以下のコードを実行してみましょう。

from openpyxl import Workbook

book = Workbook()
book.save("sample.xlsx")

上のような3行で、openpyxlをimportした上でWorkbook()の関数を使用すると
「sample.xlsx」という名前の新規ブックを作成できます。

シートに文字を書く方法

シートに文字を書く方法は以下です。

from openpyxl import Workbook

book = Workbook()
sheet = book.active
sheet["A1"] = "こんにちは"
book.save("sample.xlsx")

これで、A1という場所に「こんにちは」と表示されるエクセルができます。

まとめると以下のようになります。

  • Workbookで新しいエクセルを作る
  • 「セル」に文字を入れることで中身を編集
  • 最後にsaveで保存することが大事

Pythonの中級者以上であれば、すぐにできる内容です。

✅ Pythonでエクセルを読み書きする方法

Pythonを使えば、すでにあるエクセルファイルを読みこんで、内容を確認したり書きかえたりできます。
これができると、エクセルの自動処理がとてもはかどります。

やり方は以下のようにシンプルです。

from openpyxl import load_workbook

book = load_workbook("sample.xlsx")
sheet = book.active

このようにすると、「sample.xlsx」というファイルを開いて中のシートを使えるようになります。

セルのデータを取り出す方法

セルのデータを取り出す方法は以下です。

value = sheet["A1"].value
print(value)

このコードで、A1セルに入っている文字や数字を取り出せます。

セルに新しいデータを書きこむ方法

セルに新しいデータを書きこむ方法は以下です。

sheet["A2"] = "Pythonで追加"
book.save("sample.xlsx")

このようにすれば、A2セルに文字を入力できます。

ポイントを整理すると:
  • load_workbookでエクセルを開く
  • sheet["A1"].valueで中身を読む
  • sheet["A1"] = "文字"で指定のセルに値を入れる
  • 変更後はかならずsaveで保存

この流れを覚えておけば、自由にエクセルを動かせます。

✅ エクセルの表を自動で作る方法

Pythonを使うと、表を自分で作らなくても自動で書いてくれるようになります。
これを使えば、記録簿や一覧表などを手間なく作れます。

行や列を繰り返して書く方法

例として、キメツ学園の生徒のテスト点数を記録するエクセルファイルを作ってみましょう。

from openpyxl import Workbook

book = Workbook()
sheet = book.active

data = ["名前", "数学", "国語", "英語", "合計"]
for i in range(len(data)):
    sheet.cell(row=1, column=i+1, value=data[i])

book.save("table.xlsx")

まずこのようにすると、1行目に「名前」「各教科の点数」「合計」のラベルが入ります。

実行イメージ

先ほどのプログラムを実行するとこのような結果が得られます。

計算結果をエクセルに書き出す方法

このコードでは、キメツ学園の各生徒の点数とその合計を自動で出力しています。
※生徒は炭治郎、善逸、伊之助です。伊之助はケモノなのですべて0点です笑

from openpyxl import Workbook

book = Workbook()
sheet = book.active

data = ["名前", "数学", "国語", "英語", "合計"]
for i in range(len(data)):
    sheet.cell(row=1, column=i+1, value=data[i])

name = ["竈門炭治郎", "我妻善逸", "嘴平伊之助"]
math = [80, 90, 0]
naitive_lang = [95, 70, 0]
english = [5, 3, 0]
for i in range(len(name)):
    # 名前
    sheet.cell(row=i+2, column=1, value=name[i])
    # 数学の点数
    math_score = math[i]
    sheet.cell(row=i+2, column=2, value=math[i])
    # 国語の点数
    naitive_lang_score = naitive_lang[i]
    sheet.cell(row=i+2, column=3, value=naitive_lang[i])
    # 英語の点数
    english_score = english[i]
    sheet.cell(row=i+2, column=4, value=english[i])
    # 合計点数
    total_score = math_score + naitive_lang_score + english_score
    sheet.cell(row=i+2, column=5, value=total_score)

book.save("kimetsu_school_test.xlsx")

実行イメージ

先ほどのプログラムを実行するとこのような結果が得られます。

まとめると:
  • 繰り返し文で表の形を作れる
  • いろいろなデータを並べて書ける
  • 数の計算もそのままできる

手作業で表を作るより、はるかに早くて正確です。

✅ Pythonでエクセル操作するときの注意点

便利なPythonですが、エクセルを扱うときには気をつけるべきことがいくつかあります。
これを知っておくと、エラーやバグを回避できます。

特に大事な注意点は以下の3つです。

  • エクセルを開いたままだと保存できない
     → ファイルを閉じてからPythonで操作しましょう。
  • ファイルの名前や場所を正確に書く
     → たとえば「sample.xlsx」と「sample.XLSX」は、厳密には別のファイルと見なされます。
  • 保存を忘れると何も変わらない
     → book.save(...) を最後に置いて、結果の反映を忘れないようにしましょう。

また、セルの位置(A1など)をまちがえたり、データが入っていないところを読もうとすると、エラーが出ることもあります。

こうしたトラブルを防ぐために、コードを書くときは一つずつ確かめながら試していくのがよいでしょう。

[PR] 自宅で現役エンジニアから学べる TechAcademy(テックアカデミー) まずは無料相談!

当ブログでは、IT業界への転職、副業・フリーランスとしての働き方を目指している方に
「自宅で現役エンジニアから学べる TechAcademy」をおすすめしてます。

当ブログから申し込みの無料相談で「必ずもらえるAmazonギフト券500円分」をゲットしよう!

完全オンライン完結型の学習サービスなので、場所や時間を選ばず、
自宅やカフェなど好きな環境で効率的にスキルを磨けます。

どういうサービス?

最大の特徴は、指導を担当するのがすべて現役のプロエンジニアである点です。
実務で使われる知識や考え方を直接学べるため、教材だけでは得られない実践的なスキルを習得できます。

学習中は週2回のマンツーマンメンタリングで進捗確認や課題のフィードバックが受けられるほか、
毎日15時〜23時に対応しているチャットサポートを活用すれば、疑問点をその日のうちに解消可能です。

HATOBA

コース申し込まれる方は初心者が9割以上らしいですよ~ ほぼ未経験とかでも心配いらないです!

挫折しにくい学習設計が用意されているため、独学で続かなかった方でも安心です。

教育訓練給付金の対象コースでは最大70%(約38万円)の補助が受けられるのも魅力!

申込方法教えて!

興味ある方は、まず公式サイトの無料相談や無料体験を申し込んでみてください(※下側に画像リンクを用意してます)

評判とか口コミどうなん?

受講生の印象としては
「サポートが丁寧で続けやすい」「転職活動で役立った」
という声が多く、

一方で「担当によって対応に差がある」といった口コミも一部あります。

とはいえ、全体的にはオンラインでありながら、受講者に寄り添ってくれる指導スタイルが好評です。

受講するメリットは?

TechAcademyのメリットは「学んだスキルをそのままキャリアにつなげやすい点」です。
受講中に作成するポートフォリオは転職や案件獲得の武器になり、
キャリア支援サービス「TechAcademyキャリア」ではポートフォリオ添削や面接対策、
企業からのスカウトを受けることも可能。

HATOBA

受講した人には副業の仕事を1案件以上斡旋してくれるんだって~

転職はもちろん、副業で案件を取るためのノウハウも学べるため、
学習から収入アップまでの流れをスムーズに描けます。

料金どのぐらいなの?

料金はコースや期間によって異なりますが、例えばPythonやWeb開発の4週間コースは社会人で約17万円から。
より長期的に学ぶプランや転職保証コースでは数十万円〜最大80万円台となります。

ただし給付金制度や割引を活用すれば、実質的な負担を大きく減らすことが可能です。

それって私向きなの?

このように、TechAcademyは

  • 効率よくスキルを身につけたい
  • 短期間で転職や副業につなげたい

という方に
最適な学習サービスです。

逆に、

  • 対面授業で学びたい方
  • 自分一人で学習を進められる自信がある方

にはあまり向かないかもしれません。


もし

  • 今の仕事に不安がある
  • 副業で新しい収入源を得たい
  • 将来フリーランスとして自由に働きたい

と思っているのであれば
TechAcademyはキャリアを大きく変えるきっかけになるはずです。

HATOBA

こちらのリンクから申し込みの無料相談でAmazonギフト券500円分が必ずもらえますよ~ やってみて損はないはず!

興味ある方はぜひこちらから↓ まずは無料相談の申し込みをしてみてください!

画像に alt 属性が指定されていません。ファイル名: TechAcademy.png
※画像リンクから無料相談へ

✅ まとめ:Pythonでのエクセル操作は超便利!

以上を通じて、

  • Pythonを使って業務の効率UPにつなげたい
  • VBAよりもPythonの豊富なライブラリを便利に活用したい!

といったようなリクエストにお答えしてきました。

Pythonでエクセルを動かす方法は、思っているよりもかんたんです。
特にOpenpyxlを使えば、初心者の方でもすぐに自動化の楽しさを体験できます。

この記事で紹介した内容をまとめると:

  • PythonとOpenpyxlの準備はすぐにできる
  • エクセルファイルを作る・読む・書くの操作ができる
  • 表の自動作成や計算も自由自在
  • 注意点をおさえれば失敗もしにくい

面倒だった作業が、数行のコードで終わることに感動される方も多いです。

これをきっかけに、Pythonでの自動化やプログラミングにさらに興味を持っていただけたら嬉しく思います。
ぜひ、身近に活用できる場面から試してみてください。

プログラミング Python
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
  • Pythonの面白いサンプルプログラム3選!現役エンジニアが解説。
  • 【初心者向け】きれいなPythonプログラミングを書くコツとは?

この記事を書いた人

HATOBAのアバター HATOBA

HATOBA(はとば) です
1992年生まれ33歳
国公立大の情報通信学科卒
会社をやめて現在は個人でエンジニアをやっています
※開発経験は5年以上
プログラミング・AIなどのテック情報から
社会批評、おすすめ商品など
様々なジャンルの記事を書いています。

この著者の記事一覧へ

関連記事

  • 【初心者向け】 Pythonプログラミングで数値計算をしてみよう
    2025年6月2日
  • 【初心者向け】きれいなPythonプログラミングを書くコツとは?
    2025年6月2日
  • Pythonの面白いサンプルプログラム3選!現役エンジニアが解説。
    2025年5月31日
  • 【初心者向け】Pythonとは?現役エンジニアが徹底解説。
    2025年5月30日

コメント

コメントする コメントをキャンセル

最近の投稿

  • 「仕事頑張っても意味がない」と正直思ってしまう瞬間5つ。
  • 「それ時間の無駄!」ビジネスでのスマートな言い換え方5選
  • 学校の先生が嫌いになる瞬間4つについて。学生時代を振り返りながら
  • 学校・職場でのぼっちの過ごし方4選。陰キャの達人になろう!
  • もう迷わない!学校・職場の休み連絡で使える例文7選

最近のコメント

表示できるコメントはありません。

© しんげつBlog 2025

  • メニュー
  • トップへ
目次