6
Windows 版 ruby 版 Office 版版版版版版版版版版版 版版版版版版版版版版版版版版版 版版版[email protected] u.ac.jp 2012/09/27 K-Ruby 15th 1

Windows版 ruby で Officeアプリケーションの制御

Embed Size (px)

DESCRIPTION

Ruby での win32OLE のサンプルです.

Citation preview

Page 1: Windows版 ruby で Officeアプリケーションの制御

Windows 版 ruby でOffice アプリケーションの制御

鹿児島大学学術情報基盤センター下園幸一

[email protected]

2012/09/27 K-Ruby 15th 1

Page 2: Windows版 ruby で Officeアプリケーションの制御

要求• 100 個の PowerPoint ファイルの全ての

ページを画像として保存したい• 100 個の Excel ファイルの各シートを CSV

形式で保存したい• テキストファイルから PowerPoint を生成

したい• VBA を使えばいいが、 VBA をよく知らな

い– Ruby なら少しはわかる

2012/09/27 K-Ruby 15th 2

Page 3: Windows版 ruby で Officeアプリケーションの制御

サンプル1• ある特定の PowerPoint ファイルの全ての

ページを PNG 画像として保存• 指定 PowerPoint ファイル

C:/Users/simozono/Dropbox/k-ruby/No15/prog/sample_pp/IN2007-01.ppt

• 出力C:/Users/simozono/Dropbox/k-ruby/No15/prog/sample_pp/IN2007-01/ ディレクトリが作成され、その下に “スライド 1.PNG”, “ スライド 2.PNG” とかできます。

2012/09/27 K-Ruby 15th 3

Page 4: Windows版 ruby で Officeアプリケーションの制御

サンプル 2

• ある特定のディレクトリ配下の全てのPowerPoint ファイルの全てのページを PNG 画像として保存

• PowerPoint ファイルがあるディレクトリの指定C:/Users/simozono/Dropbox/k-ruby/No15/prog/sample_pp/

• 出力C:/Users/simozono/Dropbox/k-ruby/No15/prog/sample_pp ディレクトリ配下に IN2007-01 ( PowerPoint ファイル名)というディレクトリが複数作成され、その下に “スライド 1.PNG”, “ スライド 2.PNG” とかできます。

2012/09/27 K-Ruby 15th 4

Page 5: Windows版 ruby で Officeアプリケーションの制御

問題点• 各ページの保存ファイル名は “スライド

1.PNG” とかに固定され、変更ができない。• 保存画像名を指定したい場合は、”各ペー

ジ毎にエクスポート“ という操作になるようだ。

2012/09/27 K-Ruby 15th 5

Page 6: Windows版 ruby で Officeアプリケーションの制御

サンプル 3

• ある特定のディレクトリ配下の全てのPowerPoint ファイルの全てのページを JPG 画像として保存

• PowerPoint ファイルがあるディレクトリの指定C:/Users/simozono/Dropbox/k-ruby/No15/prog/sample_pp/

• 出力C:/Users/simozono/Dropbox/k-ruby/No15/prog/sample_pp ディレクトリ配下に IN2007-01 ( PowerPoint ファイル名)というディレクトリが複数作成され、その下に “ IN2007-01_001.jpg”, “IN2007-01_002.jpg” とかできます。

2012/09/27 K-Ruby 15th 6