Excel スプレッドシートを処理するためのオープンソース Ruby ライブラリ  

Microsoft Excel 互換のスプレッドシートを操作するための Ruby API。新しいスプレッドシートの作成、既存のドキュメントの変更、Excel スプレッドシートのセルのグループ化またはグループ解除などを行うことができます。

Ruby スプレッドシート ライブラリは、ソフトウェア開発者が独自の Ruby アプリケーション内で Microsoft Excel 互換のスプレッドシートを操作するのに役立ちます。このライブラリは非常に安定しており、GPL-3.0 ライセンスの下で一般に公開されています。ライブラリは非常にユーザーフレンドリーであり、非常に安全です。さまざまなエンコード機能のサポートが含まれています。デフォルトでは、スプレッドシートのエンコーディングには UTF-8 が使用されます。

Excel スプレッドシートの作成や、ゼロからの新しいスプレッドシートの作成、既存の Excel ファイルの読み取り、既存のスプレッドシートの変更、ページ設定の使用、新しい行と列の追加、既存の行の非表示などの操作に関連するライブラリでサポートされている重要な機能がいくつかあります。または列、行と列のグループ化、印刷設定のサポート、スプレッドシートのエンコードのサポート、下位互換性など。さらに、このライブラリは、大きな Excel ファイルを読み取る際のメモリ効率を大幅に改善しました。

Previous Next

スプレッドシート入門

スプレッドシートをプロジェクトにインストールするための推奨される方法は、RubyGems を使用することです。スムーズなインストールのために、次のコマンドを使用してください。

npm 経由で xlsx-populate をインストールする

udo gem install spreadsheet 

Ruby を使用して新しい Excel スプレッドシートを生成する

オープン ソース ライブラリの Ruby Spreadsheet は、Ruby コードを使用して Microsoft Excel 互換のスプレッドシートを生成するための完全なサポートを提供しています。数行の Ruby コードだけで、新しいワークブックを簡単に作成し、それにシートを追加できます。作成したら、コンテンツを挿入してフォーマットを適用できます。新しい行や列を挿入したり、テキストや画像を挿入したりすることもできます。

Rubyライブラリで新しいExcelスプレッドシートを作成

book = Spreadsheet::Workbook.new
sheet = book.create_worksheet(name: 'First sheet') # We are creating new sheet in the Spreadsheet(We can create multiple sheets in one Spreadsheet book)
# Let's create first row as the following.
sheet.row(0).push('Test Name', 'Test country', 'Test city', 'Test profession') # Number of arguments will be number of columns
# We can create many rows same as the mentioned above.
sheet.row(1).push('Bobby', 'US', 'New York', 'Doctor')
sheet.row(2).push('John', 'England', 'Manchester', 'Engineer')
sheet.row(3).push('Rahul', 'India', 'Mumbai', 'Teacher')
# Write this sheet's contain to the test.xls file.
book.write 'test.xls'
 

Ruby 経由で既存のスプレッドシートを読み取り、編集する

Ruby スプレッドシート ライブラリを使用すると、ソフトウェア プログラマーは、独自のアプリケーション内で既存のスプレッドシートにアクセスして開くことができます。ライブラリは、BIFF8 (Excel97 以降のバージョン) の書き込みサポートのみを提供します。また、数行のコードで既存のスプレッドシート ドキュメントを変更することもできます。ライブラリは限定的なサポートを提供しています。 Excel セルを簡単に追加、変更、または削除したり、定義済みの数式によって評価されるデータを入力したりできます。

Rubyライブラリで既存のスプレッドシートを読む

require 'spreadsheet'    
book = Spreadsheet.open('myexcel.xls')
sheet1 = book.worksheet('Sheet1') # can use an index or worksheet name
sheet1.each do |row|
  break if row[0].nil? # if first cell empty
  puts row.join(',') # looks like it calls "to_s" on each cell's Value
end
 

行と列をグループ化または非表示にする

オープン ソースの Ruby スプレッドシート ライブラリを使用すると、コンピューター プログラマーは、Ruby コマンドを使用して Excel スプレッドシートのセルをグループ化またはグループ解除できます。このライブラリは、アウトラインを含む新しいスプレッドシート ファイルを作成するためのサポートも提供しました。選択した行または列を簡単に非表示または非表示にすることもできます。スプレッドシート ファイルを読み込んでいるときに、隠しプロパティとアウトライン プロパティを簡単に変更できます。 Excel データ形式のため、outline_level は 8 未満でなければならないことに注意してください。

スプレッドシートのロスをRuby APIで隠す

    require ‘spreadsheet’
    file = ARGV[0]
    book = Spreadsheet.open(file, ‘rb’)
    sheet= book.worksheet(0)
    26.upto(30) do |i|
    sheet.row(i).hidden = true
    end
    book.write “out.xls”
 
 日本