Pythonのopenpyxlモジュールを使ったExcelファイルへの書き込み方法
openpyxlは、Excelファイル(拡張子がxlsx / xlsm / xltx / xltmのもの)を読み書きするためのPythonライブラリです。openpyxlモジュールを使うことで、PythonプログラムからExcelファイルを読み取ったり、内容を変更したりすることができます。
たとえば、数千行に及ぶデータの中から条件に合致する一部の情報だけを取り出し、小さな修正を加えたいような場面を想像してみてください。openpyxlモジュールを活用すれば、こうした作業を非常に効率的かつ簡単に自動化できます。
openpyxlのインストール
openpyxlは標準ライブラリではないため、使用前にpipでインストールしておく必要があります。
pip install openpyxl
Excelファイルへの書き込み例
以下は、新しいワークブックを作成し、セルに値を書き込んでファイルとして保存する基本的なサンプルコードです。
# openpyxlモジュールをインポート
import openpyxl
# Workbook()関数を呼び出して、新しい空のワークブックオブジェクトを作成
wb = openpyxl.Workbook()
# active属性から、ワークブックのアクティブなシートを取得
sheet = wb.active
# セルオブジェクトには、位置情報を提供する row(行)、column(列)、
# coordinate(座標) の各属性も用意されています。
# 行・列を表す整数は0ではなく、1から始まる点に注意してください。
# セルオブジェクトは、シートオブジェクトの cell() メソッドで作成できます。
c1 = sheet.cell(row = 1, column = 1)
# セルに値を書き込む
c1.value = "Vishesh"
c2 = sheet.cell(row = 1, column = 2)
c2.value = "Ved"
# ワークシートオブジェクトがあれば、セル名(A1形式)でも
# セルオブジェクトにアクセスできます。
# 「A2」は 列 = 1、行 = 2 を意味します。
c3 = sheet['A2']
c3.value = "Python"
# 「B2」は 列 = 2、行 = 2 を意味します。
c4 = sheet['B2']
c4.value = "Programming"
# ワークブックオブジェクトやそのシート・セルを変更しても、
# save() メソッドを呼び出すまではファイルには保存されません。
wb.save("C:\\Users\\Vishesh\\Desktop\\demo.xlsx")
コードのポイント解説
1. ワークブックの作成とシートの取得
openpyxl.Workbook()を呼び出すと、新しい空のワークブックがメモリ上に作成されます。wb.activeプロパティを使えば、デフォルトで用意されているアクティブなワークシートを取得できます。
2. セルへのアクセス方法は2通り
セルへのアクセスには、次の2つの方法があります。
- cell()メソッドを使う方法:
sheet.cell(row=1, column=1)のように、行番号と列番号を整数で指定します。 - セル名(A1形式)で指定する方法:
sheet['A2']のように、Excelでおなじみの「列アルファベット+行番号」の形式で直接アクセスできます。
3. save()メソッドを忘れずに
openpyxlでの変更はすべてメモリ上で行われるため、save()メソッドを明示的に呼び出さない限り、ファイルには一切反映されません。保存先のパスを引数として渡し、確実に保存するようにしましょう。
-
Pythonで作るWebサイトブロッカー ― 業務時間中にSNSへのアクセスを自動遮断する方法
大手IT企業で働いたことがある方なら、FacebookやYouTube、InstagramといったSNS系のWebサイトが社内からアクセスできないよう制限されていることに気づいた経験があるかもしれません。こうした制限は、サードパーティ製アプリに頼らなくても実現できます。自分専用のオリジナルツールを作れば、好きなWebサイトを自由にブロックできるのです。しかもPythonでWebサイトブロッカーを開発するのは、それほど難しいことではありません。この記事では、指定したWebサイトをブロックするPythonスクリプトの作り方を解説します。前提条件Python 3.x がインストールされていることPy
-
PythonのopenpyxlモジュールでExcelファイルを読み書きする方法【初心者向け完全ガイド】
Pythonには、Excelファイル(.xlsx)を操作するためのopenpyxlという便利なモジュールが用意されています。このモジュールを使えば、Excelファイルの新規作成、データの書き込み・読み取り、シートの追加や管理など、さまざまな操作をプログラムから自動的に行うことができます。 本記事では、openpyxlの基本的な使い方を、実際に動作するサンプルコードとともに順番に解説していきます。 openpyxlのインストール方法 openpyxlは標準ライブラリではないため、まずインストールが必要です。コマンドプロンプト(またはターミナル)で以下のコマンドを実行してください。 pip ins