Django Girls and Boys 備忘録

Python、Selenium、Django、java、iPhoneアプリ、Excelマクロなどで気付いたこと、覚えておきたいことなどを載せていきます。

【Python Excel】pywin32ライブラリを使用したアクティブファイル(オープンファイル)への書込方法

オープン中のExcelファイルへの読み書きをする場合に可能な方法の1つがpywin32ライブラリを使用するというものです。

 

まずはじめに、pywin32ライブラリのインストールが必要となりますがインストール方法としては以下となります。

 

 

 

 

1.pywin32のインストール
 

 

pywin32ライブラリは標準ではインストールされていないため、pipコマンドでインポートします。

 

コマンドプロンプトMacはターミナル)にて実施します。

 

pip install pywin32

 

 

2.アクティブファイル(Excelファイル)への書込みコード例

 

次に、実際のpyファイルにて、ファイルの先頭で先程のライブラリ内にあるwin32comモジュールをインポートします。

 

 

import win32com.client

 

その後、Excelがすでに起動されている場合は、Getobjectを使用してExcelを取得します。

 

xl = win32com.client.GetObject(Class="Excel.Application")

 

そのExcelに対して、通常のExcel操作と同様に以下のように指定することでアクティブシートの「A12」へ"hello, world!"を書き込むことが出来ます。

 

xl.Range("A12").Value = "hello, world!"

 

全体としては以下のようになります。

 

import win32com.client

xl = win32com.client.GetObject(Class="Excel.Application")

xl.Range("A12").Value = "hello, world!"

 

以上がファイルオープンしているファイル(アクティブファイル)への書込方法の説明になります。