Python でExcelを操作する①

ワークブックの作成・編集

Python はデータ処理や自動化のための強力なツールとして知られていますが、その領域はオフィス系ソフトウェアにも広がっています。例えば、ExcelやWordなどのMicrosoft Office製品を Python で操作することが出来ます。
今回はExcelを使用し、新規ワークシートを作成して編集してみましょう。

Python でCSVファイルの作成・編集を行う方法はこちら
他の Python の記事⼀覧は こちら

目次

必要なライブラリのインストール

Python のパッケージ管理システムであるpipを使用して、今回使用するライブラリをインストールしましょう。(既に環境が構築出来ていればインストール不要です。)
下記のコマンドをターミナルで実行し、今回必要な環境を構築してください。

pip install openpyxl 

上記のインストールが終わりましたら、Excelのワークシートを作ってみましょう。
(openpyxl : Python でExcelファイル(.xlsx形式)を操作するためのライブラリです。このライブラリを使用すると、Excelファイルの作成、読み込み、変更、保存などの操作が可能になります。)

新規ワークブックの作成・編集・保存

openpyxlモジュールを用いて新規Excelファイルを作成し、セルに文字を書き込んで保存してみましょう。下記のcreate_excel.pyを作成し、実行してみてください。

import openpyxl
workbook= openpyxl.Workbook()  # 新しいワークブックを作成
worksheet = workbook["Sheet"] #ワークシート名「Sheet」の、ワークシートを取得する
worksheet["A1"] = "Hello,"  # SheetのA1セルに文字列を書き込む
worksheet["B1"] = "Python!"  # SheetのB1セルに文字列を書き込む
workbook.save("create_excel.xlsx")  # ワークブックを保存
print("***Create Success!***")

実行してみるとターミナルに「***Create Success!***」と表示され、create_excel.pyが存在する作業フォルダに「Hello,Python!」と記載されたcreate_excel.xlsxが作成されます。

Pythonでセルに書き込む

上記のようなファイルが出来ていればOKです。
では、create_excel.pyの中身について見ていきましょう。

ワークブックの作成

import openpyxl
workbook= openpyxl.Workbook()  # 新しいワークブックを作成

「import openpyxl」でopenpyxlモジュールをインポートし、Excelファイルを扱えるように準備します。これはExcelファイルを操作するためのライブラリです。

「openpyxl.Workbook()」はopenpyxlライブラリを使用して新しいExcelワークブックを作成するためのメソッドです。このタイミングで新規ワークブックを作成しています。
Workbook()メソッドはワークブックのオブジェクトを作成して返すので、作成したワークブックを変数workbookに代入することで書き込みや保存を行えるようにしています。

ワークシートの選択

worksheet = workbook["Sheet"] #ワークシート名「Sheet」の、ワークシートを取得する

変数workbookにはどのワークブックを対象とするかが代入されましたが、その中でどのワークシートを操作対象にするかはまだ指示していません。workbook内の、どのワークシートを操作対象とするかを変数worksheetに代入して指示します。

ワークシートの取得にはいくつか方法がありますが、今回はワークシートのタイトルを指定して取得します。取得方法は「ワークブックオブジェクト[“ワークシート名”]」で対象のワークブック内に存在するワークシートを取得することが出来ます。
今回は「worksheet = workbook[“Sheet”]」と指示していますので、変数workbook内の「Sheet」シートを取得して変数worksheet に代入しています。
(※ Workbook()メソッドで新規作成されたワークブックには、デフォルトで「Sheet」シートが作成されています。今回はこの「Sheet」シートを利用するので、ワードシートの新規作成は不要です。)

ワークシートの編集

worksheet["A1"] = "Hello,"  # SheetのA1セルに文字列を書き込む
worksheet["B1"] = "Python!"  # SheetのB1セルに文字列を書き込む

どのワークシートを操作対象とするか指示出来るようになったら、いよいよ内容を編集しましょう。変数worksheet には先ほど取得した「Sheet」シートが代入されていますので、このワークシートを対象としてセルに文字列を書き込みます。

「ワークシート[“セル”] = “内容”」で指定のセルに内容を書き込むことが出来ます。
今回はA1,B1の2つのセルに文字列を書き込んでみます。
・worksheet[“A1”] = “Hello,” (「Sheet」のA1セルに「Hello,」を書き込み)
・worksheet[“B1”] = “Python!” (「Sheet」のB1セルに「Python!」を書き込み)

ワークブックの保存

workbook.save("create_excel.xlsx")  # ワークブックを保存
print("***Create Success!***")

編集が終わったら、忘れずに保存を行いましょう。
saveメソッドを使用することで、ワークブックを指定したファイル名で保存できます。
今回はcreate_excel.xlsxと命名してワークブックを保存しました。

上記の一連の流れが問題なく実行出来た事を確認するため、ターミナルにprint文で「***Create Success!***」と表示しています。

いかがでしたでしょうか。 Python でExcelが操作できると、データ整理や書類作成等に役立ちます。次回は新しいシートの追加・削除、セルのデータの読み取りなどについて扱います。

(Visited 38 times, 1 visits today)
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次