PythonでExcelを操作するための環境構築。Excelの起動まで丁寧に解説。
- PythonでExcelを操作する方法を1から始めたい。
- Excelで自動化していきたい。けど何も始めていない。
今回は!
Pythonを使ってExecelを操作するための環境構築を行っていきます。
Excelを操作するには、環境構築が必須です!
この記事では、環境構築を解説していきます。ここの環境構築ができれば、あとは構文を並べていけばよいだけです。
環境構築は自動化の第一歩!
自動化には、どんな作業を自動化したいかを考えがちです。初心者にとって大事なのは、環境を整えてまずは書いてみることです。
では、一緒にPythonを触っていきましょう。
目次(クリックで読みたい部分にジャンプできます)
ライブラリのインポート
PythonでExcelを操作するためには、
Pythonのモジュールの一つである、PyWin32を用います。サードパーティのライブラリですが、Python公式マニュアルにも記載があります。Python公式ページ.
コマンドプロンプト起動します。
コマンドプロンプトでは、次のように記載しましょう。
py -m pip install pywin32
cmdでの書き方と、import文で書き方はチガウ??
先ほどの、コマンドプロンプトでは
pywin32と記載していました。しかし、import文で書くときは、別の書き方をします。
import win32com.client as com
コードの中では、win32comと記載します!
実はこのような、インストール時 と import文 で書くときで書き方が違う場合は多くあります。
import文 と コマンドプロンプト での書き方が違う可能性があることを覚えておきましょう♪
実は、Pywin32には公式のExcel操作方法はありません!
Excelの操作方法を学ぶ方法は、マイクロソフトのVBAマニュアルを参考にして読み替える。もしくは、ネットに転がってるサイトなどから勉強することになるかと思います!
ただ、ネットに転がってる情報は最近はとても役立ちます!なので、十分公式サイトなしでも学んでいけるのではないかと思います。
Excelファイルを起動する
実はExcelファイルを起動するだけですが、構造が入り組んでます。
Excelアプリを起動するところが、Excel操作の第一歩となります。このコードは使いまわし可能です。これから、Excel操作を行いたいときに、都度コピペして使ってもらえたらと思います!
コードに入る前に!
まずは前提条件のファイル構成を確認します。今回に限らず、これからプログラムを書くときは、前提条件をよく確認することが大事になります。
今回のファイル数は、計2つです。
これから、紹介する「Pythonプログラム」と「Excelのデータの入出力」用のExcelファイルです。
配置は次のようになっています。
ファイルの配置
C:/Users/【PCの名前】/Desktop/フォルダ
Desktop/フォルダE
∟ Excelへの入出力確認用.py
∟ Excel_アプリの入出力確認用.xlsx
Excelへの入出力確認用.py の中身&コード解説
import win32com.client as com
import os #------------------------------------------------------------------------------------①
#サンプルプログラム基準のエクセルファイルパスを定義しています。#-------------------------------------②
#プログラムファイルのディレクトリパス(folder_path)の取得
folder_path = os.path.firname(__file__)
#エクセルファイルのパス
excel_file_path = folder_path + os.sep + "Excel_アプリの入出力確認用.xlsx"
app = com.Dispatch("Excel.Application")#-------------------------------------------------------③
app.Visible = True#----------------------------------------------------------------------------④
app.DisplayAlerts = False#---------------------------------------------------------------------⑤
wb = app.Workbooks.Open(excel_file_path)#------------------------------------------------------⑥
sheet = wb.Worksheets("sheet1")#---------------------------------------------------------------⑦
①では、OSライブラリをインポート。
OSライブラリは、パスを指定するのに使えるモジュールです。Excelファイルのファイルパスを作るために使用します。
②では、Excelファイルのファイルパスを作成します。
先ほどのOSライブラリを使って、Excelファイルのプログラム基準のファイルパスを作ります。
この後、Excelアプリケーションを起動します。
Excelファイルパスは、アプリケーションの起動よりも前に作成しました。
人によって配置する場所には考え方があるかと思います。
しかし、設定する値が、増えてくるとプログラムが見えづらくなるので、初期設定値を前に固めるようにしています♪
③では、Excelアプリケーションを起動します。
④では、Excelアプリケーションを開いた状態で起動します。
画面を閉じて動作させることも可能です。しかし、開発者が目で見て動作を確認できないので、開いた状態で操作します。
⑤では、Excel操作時の警告メッセージを非表示にします。
警告メッセージとは、アプリケーションが停止しないものの、何か「警告」に該当するメッセージを表示する場合があります。意外と多くの場合に警告メッセージを表示します。なので、今回は非表示でExcelのアプリケーションを操作します。
⑥では、Excelのファイルを開いています。
先ほど作った、Pythonのプログラム基準のファイルパスを設定しています。開いたワークブックを(wb)と定義しています。wbはExcelのWorkbookオブジェクトを表しています。
⑦では、ワークブックの中のシート(sheet1)を指定してsheetを定義しています。
以上でExcelファイルを開き、シートを指定するところまでできました!
まとめ
今回は、ExcelファイルをPythonで開くための方法を解説しました。
また、Excel操作のためには、VBAという手段もあります。Pythonを使う人は、VBAと比較した上でどっちにするか決めた方がよいでしょう!
以下記事では、PythonとVBA、RPAの比較をまとめています。ぜひ併せてご覧ください。