Python プログラミング

Python Excel セルの値の取得 書き込み【python入門#10】

 

みやちゃ

 

皆さんこんにちは、みやちゃです!

物理とプログラミングについて解説しています!

こちらの記事で、Railsのアプリケーション開発からRspecのテスト、herokuにデプロイまで解説しています!

今回はpythonの第10弾です!

今回はセルの値を読み込む・書き込む方法をご紹介します!

今回は
  • セルの値の読み込み・書き込み
この記事を読むと

Excelファイルのセルの値を読み込んだり、書き込んだりできるようになります!

目次

openpyxl

Excelファイルをpythonで読み込むためには、openpyxlというモジュールが必要になります。

python3にopenpyxlをインストールして、インポートすることにより、モジュールの機能を利用します。

openpyxlのインストールがまだできていない方は、こちらの記事(openpyxlのインストール)を参考にしてください。

IDLE

このブログでは、pythonの学習にIDLEを使用しています。

IDLEについては、こちらの記事(IDLEの使い方 python入門#2)で詳しく解説しているので、ぜひご覧ください。

Excelファイルの読み込み

以下のようなExcelファイルを読み込んでいきます。

ファイル名は「ghibli.xlsx」です。

それでは、実際にコードを書いてファイルを読み込んでみましょう。

以下のコードを見てください。

import openpyxl

wb = openpyxl.load_workbook('ghibli.xlsx')
ws = wb.worksheets[1]
print(ws.title)

1行目でopenpyxlのモジュールをインポートしています。

これをしないとファイルの読み込みができません。

openpyxl.load_workbook('ファイル名')とすることで、ファイルを読み込むことができます。

worksheets[1]でインデックス番号でシートを指定しています。

シートは「ジブリPart1」、「ジブリPart2」の2つあります。

worksheets[0]とすると、シート1

worksheets[1]とすると、シート2

が読み込まれます。

セルの取得

Excelのファイルとシートの読み込みができたので、実際にセルを読み込んでみましょう。

セルは、"セル番地"か"行番号、列番号"で指定します。

以下のコードを見てください。

import openpyxl

wb = openpyxl.load_workbook('ghibli.xlsx')
ws = wb.worksheets[1]
print(ws.title)

a = ws["A3"] #セル番地で指定
print(a.value)

7行目でシートのセル番地を指定することにより、セルを指定しています。

これを実行すると、以下のような結果が出力されました。

============= RESTART: /Users/yuto/Desktop/python sample/lesson.py =============
ジブリPart2
作品名
>>> 

A3のセルのところの値である「作品名」という文字列が読み込まれ、出力されました。

セルへの書き込み

それでは指定したセルに値を書き込んで見ます。

以下のコードを見てください。

import openpyxl

wb = openpyxl.load_workbook('ghibli.xlsx')
ws = wb.worksheets[1]
print(ws.title)

a = ws["A3"]
a.value = "書き込み"

wb.save('ghibli.xlsx')

print(a.value)

「a.value = ""」とすることで、書き込みをすることができます。

また10行目でファイルを保存しています。

このプログラムを実行すると、Excelファイルが変更されます。

上の画像のように、変更が加えられて、最終編集日時が更新されていることがわかります。

まとめ

いかがでしたでしょうか?

今回は、PythonでExcelファイルのセルの値の読み込み・書き込みについて解説しました!

 

みやちゃ

 

ここまでご覧いただきありがとうございます!

© 2024 とあるエンジニアの備忘録ブログ Powered by AFFINGER5