なんだかGoodVibes

日々の勉強メモです。

【Python】エクセルの情報を取得してみる(openpyxlモジュール)

こんにちは。
本日はPythonメモです。

概要

エクセルの情報を取得してみます。
openpyxlモジュールが必要となります。
インストールは以下のコマンドを実行してできます。

$ pip3 install openpyxl


サンプルコード

本サンプルのゴールは特定のセルの情報を取得することとします。
以下の流れで処理を実施し、各シートのセル情報を取得します。

  1. ワークブックを読み込む
  2. ワークブックのシート名を取得する
  3. 各シートのセル情報を取得する
import openpyxl

wb = openpyxl.load_workbook('sample.xlsx')

shNames = wb.sheetnames

for shName in shNames:
    sh = wb[shName]
    print(shName + ' : ' + sh.cell(row=1, column=1).value)

以下に各処理について詳細を記載します。


1. ワークブックを読み込む

ワークブックの読み込みは以下のように行います。

openpyxl.load_workbook(ブック名)


2. ワークブックのシート名を取得する
  1. で取得したワークブックを使用して
    全シート名称を取得します。
wb.sheetnames


3. 各シートのセル情報を取得する

ワークブックとシート名を使用して
シート情報を取得します。

sh = wb[shName]

シート情報を使用してセル情報を取得します。

sh['A1'].value

もしくは

sh.cell(row=1, column=1).value

ちなみに、セルが空の場合は「None」となります。

全シートのセル情報を取得するので
取得したシート名でループします。

for shName in shNames:
    sh = wb[shName]
    print(shName + ' : ' + sh.cell(row=1, column=1).value)



以上です。