こちらの記事は中級者向けの内容となっています。
- Pythonを使って業務の効率UPにつなげたい
- VBAよりもPythonの豊富なライブラリを便利に活用したい!
といった要望があってこちらのブログにいらしたでしょうか?
お任せください!本記事ではOpenpyxlの使い方を簡潔に説明しております。
初心者向けの情報、Pythonのインストール方法について知りたいという方は
ぜひこちらの記事を読んでみてください↓
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")
実行イメージ
先ほどのプログラムを実行するとこのような結果が得られます。


- まとめると:
-
- 繰り返し文で表の形を作れる
- いろいろなデータを並べて書ける
- 数の計算もそのままできる
手作業で表を作るより、はるかに早くて正確です。
[PR] 通学不要で大卒資格(学士号)が取れる【サイバー大学】まずは資料請求!
当ブログでは、未経験IT志望の人向けに
「ソフトバンクグループ運営の通信制大学【サイバー大学】」をおすすめしてます。
※画像をクリック/タップしてね!
完全オンライン完結型のスクールなので、場所や時間を選ばず、
自宅やカフェなど好きな環境で大卒資格(学士号)の取得を目指せます。
どんな大学?
最大の特徴は、未経験からでもITとビジネスの基礎を体系的に学びながら、大卒資格(学士)を取得できる点にあります。
特にIT未経験の方向けのイチ押しポイント!は以下です。
- プログラミング・ネットワーク・情報セキュリティなど基礎から学べる
- 「知識ゼロ前提」で設計された授業が多く、段階的に理解できる
- 通学不要で、仕事やアルバイトと両立しやすい
- 国が認めた正規の大学のため、履歴書に「大学卒業」と書ける



在籍在学生の半数以上が社会人で、若手社員から管理職、経営者まで幅広い方々の学びの場となっているようです


申込方法教えて!
申込方法
申し込みはすべて公式サイトからオンラインで完結します。
- 募集要項を確認
- Web出願フォームから申し込み
- 必要書類を提出
- 合格後、入学手続きを実施
使用方法(学習の進め方)
- 専用の学習システムにログイン
- 動画授業を視聴
- 課題・小テストを提出
- 定期試験もオンラインで受験
評判とか口コミどうなん?
サイバー大学の印象は、良い意味で「堅実」「現実的」なところですね。
- 派手さよりも実用性重視
- IT・ビジネス寄りの内容で大人向け
- 社会人・学び直し層が多く落ち着いた雰囲気
- 「ちゃんと学ぶ人向け」の印象
通学のメリットは?
未経験IT志望の人にとっての大きなメリットは、学歴とIT基礎を同時に得られる点です。
- ITの基礎知識が体系的に身につく
- 未経験でも「学んできた証明」を作れる
- 大卒資格があることで応募できる求人が増える
- 働きながら・生活を変えずに学べる
- 学習習慣が身につき、独学より挫折しにくい
料金どのぐらいなの?
サイバー大学の学費は、私立大学としては比較的現実的な水準です。
- 入学金:
約10万円前後→ いまなら0円! - 年間授業料:約70〜80万円前後
- 4年間総額:約300万円前後
ただ、通常と比べて通学費・引っ越し費用がかからないため、
実質的な負担は通学制の私立大学より抑えられるケースもあると思いますね。



学費としては決して安くはないんですが、何よりもやはり時間的なメリットがデカいですよねー!
※正確な金額は必ず公式サイトで最新情報を確認してください。
それって私向きなの?
未経験IT志望の中でも、次のような人には特におすすめです。
- IT業界に行きたいが、何から始めるか迷っている人
- 独学やスクールに不安を感じている人
- 大卒資格がなく、求人で不利を感じている人
- 働きながら将来の準備をしたい人
- 時間管理ができ、コツコツ学習できる人
「一発逆転」ではなく、着実にITキャリアの土台を作りたい人向けの選択肢です。
一方で、以下のような人には合わない可能性があります。
- 短期間で即エンジニア転職だけを狙いたい人
- 手取り足取り教えてもらわないと続かない人
- 対面授業やキャンパスライフを重視する人
- 自己管理が苦手で学習を後回しにしがちな人
「楽に稼げるIT職」目的だと、ギャップを感じやすいかもしれませんね…
サイバー大学は、未経験からIT業界を目指す人が「学歴」と「基礎力」を同時に手に入れるための、堅実な選択肢です。
焦らず、でも確実にキャリアを変えたい人には、一度は検討する価値がありると思います。



興味ある方はぜひこちらから↓ まずは資料請求だけでもぜひやってみてください!
※画像をクリック/タップしてね!


✅ Pythonでエクセル操作するときの注意点
便利なPythonですが、エクセルを扱うときには気をつけるべきことがいくつかあります。
これを知っておくと、エラーやバグを回避できます。
特に大事な注意点は以下の3つです。
- エクセルを開いたままだと保存できない
→ ファイルを閉じてからPythonで操作しましょう。 - ファイルの名前や場所を正確に書く
→ たとえば「sample.xlsx」と「sample.XLSX」は、厳密には別のファイルと見なされます。 - 保存を忘れると何も変わらない
→book.save(...)を最後に置いて、結果の反映を忘れないようにしましょう。
また、セルの位置(A1など)をまちがえたり、データが入っていないところを読もうとすると、エラーが出ることもあります。
こうしたトラブルを防ぐために、コードを書くときは一つずつ確かめながら試していくのがよいでしょう。
✅ まとめ:Pythonでのエクセル操作は超便利!
以上を通じて、
- Pythonを使って業務の効率UPにつなげたい
- VBAよりもPythonの豊富なライブラリを便利に活用したい!
といったようなリクエストにお答えしてきました。
Pythonでエクセルを動かす方法は、思っているよりもかんたんです。
特にOpenpyxlを使えば、初心者の方でもすぐに自動化の楽しさを体験できます。
この記事で紹介した内容をまとめると:
- PythonとOpenpyxlの準備はすぐにできる
- エクセルファイルを作る・読む・書くの操作ができる
- 表の自動作成や計算も自由自在
- 注意点をおさえれば失敗もしにくい
面倒だった作業が、数行のコードで終わることに感動される方も多いです。
これをきっかけに、Pythonでの自動化やプログラミングにさらに興味を持っていただけたら嬉しく思います。
ぜひ、身近に活用できる場面から試してみてください。











コメント