[ruby-list:48697] [ANN] Excel操縦用ライブラリexlap v1.1 release

From: "YOSHIIZUMI" <t-yoshiizumi@...>
Date: 2012-04-10 14:20:43 UTC
List: ruby-list #48697
 吉泉といいます。

 Excel操縦用ライブラリ exlap ver 1.1 をリリースしました。
 win32ole経由で Excel を制御するためのライブラリです。
 下からダウンロードできます。

http://cup.sakura.ne.jp/exlap.htm

 今回の exlap110.zip には、これまで少しづつwebに載せてきたサンプルス
クリプトとその解切文を一通り同梱しました。
 そのジャンルとしては、Basic(基本)、Addition(csvの扱いなど追加サンプ
ル)、QueryTable(外部データの取込み)、PivotTable(集計表の作成)、
Scenario(場合分けの表示)、DataTable(縦・横クロス計算の簡易化)、
GoalSeek(単一変数計算式の逆算)、Solver(複数変数計算式の最適解追求)があ
ります。

 以下、旧バージョンからの変更点を記します。

*ver 1.03(2011/02/19) → 1.1(2012/04/10)の修正点
・Excelのバージョン(2003:11.0, 2007:12.0)を取り違えている箇所があった
のを修正。Excel2003でワークブックの保存(save)がうまくいかないケースが
あった(?)のを是正。
・「begin rescue end」の記述で、不適当な箇所があったのを修正。
・グローバル変数を使わないように改定。$excel_version, $ext_typeをイン
スタンス変数にした。
・むき出しのメソッド(クラスやモジュールに属さないメソッド)をなくした。
それらを module Exl に収納。これにより、従来のスクリプトがそのままでは
動かなくなる可能性があるが、スクリプトの最初の方に「include Exl」を置
けば動くはず。
・module Exl に次のメソッドを新たに設けた。
    relrc(rng, cur)  RC形式で相対番地を返す
    absrc(rng)  RC形式で絶対番地を返す
・モジュールExlsheetに、range_eachメソッドを追加。Rangeオブジェクト内
のセルを一つづつ参照するのに便利。
・クラスExlapに、opens_onceメソッドを追加。opensがワークブックを一つづ
つ開くのに対し、opens_onceは、複数のワークブックを同時に開く。
・クラスExlapに、インスタンス変数 @order, @last を追加。イテレータブロッ
クの中でワークブックを一つづつ開く場合、何番目のワークブックカ(@order)、
全部で何個のワークブックを開くか(@last)を知ることができる。
・クラスExlapに、インスタンス変数 @auto_quit, @auto_close を追加。これ
らをtrueにすると、ワークブック処理のイテレータブロックが終了した時点で
Excelを自動的に終了、イテレータブロック内における一つづつのワークブッ
ク処理が終了した時にそのワークブックをクローズ。
・クラスExlapに、addin_list(regex) メソッドを追加。組み込まれているア
ドインのリストを取得。
・ソルバーを扱うためのクラスExlSolverをexlap.rbに組み込む。

 以上、ご参考まで。



In This Thread

Prev Next