カテゴリ: Python 更新日: 2025/10/24

PythonでExcelファイル(.xlsx)を操作する方法を徹底解説!初心者でもできるopenpyxl・pandasの使い方

PythonでExcel(xlsx)ファイルを操作する方法(openpyxl / pandas の活用)
PythonでExcel(xlsx)ファイルを操作する方法(openpyxl / pandas の活用)

先生と生徒の会話形式で理解しよう

生徒

「PythonでExcelファイルを読み取ったり書き込んだりってできますか?表計算ソフトみたいに使いたいです。」

先生

「もちろんできますよ。Pythonにはopenpyxlpandasという便利なモジュールがあり、Excel(.xlsx)ファイルを操作できます。」

生徒

「そうなんですね!でもパソコンもPythonも初心者で、不安です…」

先生

「心配いりません。これからわかりやすく丁寧に、Excelファイルの読み書き方法を基礎から解説していきますね。」

-

1. Excelファイル(.xlsx)とは?

1. Excelファイル(.xlsx)とは?
1. Excelファイル(.xlsx)とは?

Excelファイルとは、Microsoft Excelで使われる表計算ソフトのファイル形式のことです。表(テーブル)を作って、データを並べたり計算したりするのに使われます。

Pythonでは、拡張子が.xlsxのファイルを操作できます。.xlsは古い形式なので、基本的には.xlsxを使いましょう。

2. PythonでExcelを操作するための準備

2. PythonでExcelを操作するための準備
2. PythonでExcelを操作するための準備

PythonでExcelファイルを読み書きするには、まずopenpyxlpandasというモジュールをインストールします。以下のように入力します。


pip install openpyxl pandas

openpyxlはExcelファイルを細かく操作するのに使われ、pandasはデータを表形式で扱える便利なツールです。

3. openpyxlでExcelファイルを読み込む方法

3. openpyxlでExcelファイルを読み込む方法
3. openpyxlでExcelファイルを読み込む方法

まずはopenpyxlを使って、既存のExcelファイルを開いて内容を表示してみましょう。


import openpyxl

workbook = openpyxl.load_workbook('sample.xlsx')
sheet = workbook.active

print(sheet['A1'].value)

load_workbook()でファイルを開き、sheet['A1'].valueでA1セルの値を取得します。簡単にセルの中身が読めるのがポイントです。

4. openpyxlでExcelに書き込む方法

4. openpyxlでExcelに書き込む方法
4. openpyxlでExcelに書き込む方法

次に、Excelファイルに新しいデータを書き込んで保存する方法です。


import openpyxl

workbook = openpyxl.Workbook()
sheet = workbook.active

sheet['A1'] = '名前'
sheet['B1'] = '年齢'
sheet['A2'] = '田中'
sheet['B2'] = 28

workbook.save('output.xlsx')

Workbook()で新しいExcelファイルを作成し、セルに直接値を代入してsave()で保存します。保存後はExcelで開いて確認できます。

-

5. pandasでExcelを読み込む方法

5. pandasでExcelを読み込む方法
5. pandasでExcelを読み込む方法

pandasを使うと、Excelの表をまとめて読み込んで、表形式(DataFrame)として扱えます。大量のデータでも効率よく処理できます。


import pandas as pd

df = pd.read_excel('sample.xlsx')
print(df)

read_excel()を使えば、1行ずつ読み込まずに表全体を一気に取得できます。表示も表形式でとても見やすいです。

6. pandasでExcelに書き込む方法

6. pandasでExcelに書き込む方法
6. pandasでExcelに書き込む方法

pandasで新しくデータを作って、それをExcelファイルに保存する方法を紹介します。


import pandas as pd

data = {
    '名前': ['佐藤', '鈴木'],
    '年齢': [34, 29]
}

df = pd.DataFrame(data)
df.to_excel('people.xlsx', index=False)

DataFrameで表を作り、to_excel()でファイルに保存します。index=Falseは行番号をExcelに書き出さないための設定です。

7. Excelのシート名を指定して読み込むには?

7. Excelのシート名を指定して読み込むには?
7. Excelのシート名を指定して読み込むには?

1つのExcelファイルに複数のシート(タブ)がある場合、特定のシートを指定して読み込むこともできます。


import pandas as pd

df = pd.read_excel('multi_sheet.xlsx', sheet_name='社員一覧')
print(df)

sheet_name=に読みたいシート名を指定すれば、目的の表だけを取り出すことができます。

8. Excelファイルを編集して上書き保存する方法

8. Excelファイルを編集して上書き保存する方法
8. Excelファイルを編集して上書き保存する方法

すでにあるExcelファイルの中身を変更したい場合は、openpyxlで読み込んでから編集して保存します。


import openpyxl

workbook = openpyxl.load_workbook('output.xlsx')
sheet = workbook.active

sheet['B2'] = 30
workbook.save('output.xlsx')

このように、指定したセルの値を変更して、同じファイル名で保存すれば上書きが完了します。

9. Excelファイル操作時の注意点

9. Excelファイル操作時の注意点
9. Excelファイル操作時の注意点

初心者がExcelファイルをPythonで操作するときに気をつけたいポイントを紹介します。

  • Excelを開いたままだと保存できないことがあるので、操作前に閉じておく
  • 文字コードの関係でエラーが出るときは、encoding='utf-8'を明示する
  • 拡張子が.xlsxでないとエラーになることがある(.xlsは非対応)
  • ファイル名に日本語や記号を含めると保存時に失敗することがある

基本さえ押さえれば、PythonでのExcel操作はとても簡単で便利です。

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

関連記事:
カテゴリの一覧へ
新着記事
PHPでセッションを使ってフォーム入力を保持する方法を解説!初心者向けステップバイステップ
Pythonで文字列をリストに変換する方法!split()とjoin()の使い方
Pythonの変数とは?定義方法とデータ型を初心者向けに解説
PHPでメールフォームを作る方法を徹底解説!初心者向けにmail関数とPHPMailerの使い方も紹介
人気記事
No.1
PHP&Python記事人気No1
Pythonでテキストファイルを1行ずつ読み込む方法(readline() / readlines())
No.2
PHP&Python記事人気No2
Pythonで文字列が数値か判定する方法!isdigit()・isnumeric()の違い
No.3
PHP&Python記事人気No3
Pythonのリストを辞書に変換する方法(dict() / zip())
No.4
PHP&Python記事人気No4
初心者向けにPHP でファイルを開く・読み込む・書き込む方法(fopen, fwrite, fread)を解説する記事
-