Ruby
Excel

RubyでExcelファイルを扱うライブラリの比較

More than 1 year has passed since last update.


概要

RubyでExcelファイルを扱うライブラリは、Win32OLEをはじめとしていくつか存在する。

どれを使用すべきか迷ったので、ざっくり比較してみた。

2014/09/03追記

こちらの方がよくまとまっています。

Ruby - RailsでExcelを扱うGemまとめ - Qiita


ライブラリ


比較

ライブラリ
読み込み可能ファイル形式
書き込み可能ファイル形式
特徴

Win32OLE
xls, xlsx
xls, xlsx
・Windows上でのみ使用可能(標準ライブラリに含まれている)
・COMオブジェクトを操作する感じ

WrapExcel
xls, xlsx
xls, xlsx
・Win32OLEをラップしてRubyっぽく使いやすくしたもの

Spreadsheet
xls
xls
・読み込んだファイルをそのまま上書きすることはできない(別ファイルで書き込む必要がある)
・'A1'形式でのセル指定はできない(ゼロ始まりのインデックスで指定する)

Roo
xls, xlsx, OpenOffice, Google spreadsheets, LibreOffice, CSV
Google spreadsheets
・xlsファイルへのアクセスには内部的にSpreadsheetを使用している
・インデックス(1始まり)でも'A1'形式でもセル指定ができる
・書き込みができるのはGoogle spreadsheetsのみ

Axlsx
N/A
Office Open XML (xlsx, OpenOffice, ...)
・読み込みはできず書き込みしかできない
・チャートや数式、その他の書式等、細かい指定が可能
・'A1'形式だけでなく、'A1:D4'形式、'Sheet1!A3:B4'形式でのセル指定が可能
・商用利用の場合はドネーション推奨