2010年5月14日金曜日

Ruby:Excel:Excelのヴァージョンの違い

RubyでExcelを扱うプログラムを走らせたら、

GUI.rb:39:in `const_load': failed to LoadTypeLibEx (WIN32OLERuntimeError)
HRESULT error code:0x80029c4a
タイプ ライブラリ/DLL の読み込みエラーです。
from GUI.rb:39

のようなエラーが出ます。悩んでいたらExcelのヴァージョンの違いで下記のバージョン指定を変えないといけないようです。

Excel 2000 では
WIN32OLE.const_load('Microsoft Office 9.0 Object Library', Office)
WIN32OLE.const_load('Microsoft Excel 9.0 Object Library', Excel)

Excel 2003 では
WIN32OLE.const_load('Microsoft Office 11.0 Object Library', Office)
WIN32OLE.const_load('Microsoft Excel 11.0 Object Library', Excel)

これで無事動きました。

0 件のコメント: