Excel XLSX用の無料・超高速Rubyライター&リーダー
超高速のオープンソースRubyライブラリは、ソフトウェア開発者がExcel XLSXファイルを作成、読み取り、操作できるようにします。Excelのセル、行、列の書式設定や結合・分割を適用できます。
Fast_Excelとは?
Ruby アプリケーションは非効率的な Excel 作成で遅くなっていますか? Fast_Excel は、メモリ過負荷なしで高速に Excel ファイルを作成できるウルトラ高速 Excel ライターです。この強力なオープンソースの Ruby スプレッドシート API は、最適化された libxlsxwriter C ライブラリへの Ruby FFI バインディングとして機能し、C の速度をクリーンな Ruby インターフェースで提供します。高性能な無料 Ruby Excel ライブラリとして、最小限のメモリフットプリントを維持しながら、Excel XLSX ファイルをシームレスに作成し、XLSX スプレッドシートデータを管理できます—リアルタイムで大規模レポートを生成するのに最適です。
Fast_Excel は機能が豊富なソリューションで、開発者が Excel XLSX スプレッドシートドキュメントや CSV ファイルを簡単に作成できるようにします。速度だけでなく、セル、行、列の書式設定を適用したり、数式を追加したり、マルチシートブックを構築したりするための広範なコントロールを提供します。その効率的なアーキテクチャにより、純粋な Ruby の代替手段よりも操作が大幅に高速になり、サーバーリソースを適切に管理できます。ODS スプレッドシートの出力を作成する必要がある場合や、複雑な Excel 機能を扱う場合でも、Fast_Excel は生のパフォーマンスと直感的で Ruby フレンドリーな API を組み合わせて、すべてのスプレッドシートエクスポートニーズに対応します。
Fast_Excelの使い方
Fast_Excel ライブラリをインストールする推奨方法は RubyGems を使用することです。スムーズなインストールのために、以下のコマンドを使用してください。
RubyGems 経由で rubyX をインストール
$ gem install fast_excel Ruby APIでシンプルなスプレッドシートを書く
オープンソースのFast_Excelライブラリは、ソフトウェア開発者が自分のRubyアプリケーション内で新しいExcel XLSXファイルを非常に効率的に、かつ低メモリ負荷で作成できるようにします。主な利用ケースは、データの配列からシンプルなスプレッドシートを生成することです。新しいワークシートの追加、既存ワークシートの名前変更、テキストや画像の挿入などをサポートしています。以下は、Rubyアプリ内でシンプルなXLSXスプレッドシートを作成する方法を示す簡単な例です。
Ruby ライブラリでシンプルなスプレッドシートを作成する方法は?
require 'fast_excel'
# Create a new workbook
workbook = FastExcel.open("constant_memory.xlsx", constant_memory: true)
# Add a worksheet
worksheet = workbook.add_worksheet("User Report")
# Add data rows. The write_row method accepts an array of values.
worksheet.write_row(0, ["ID", "Name", "Email"]) # Header row (row index 0)
users = User.limit(10000)
users.each_with_index do |user, index|
# Write each row, starting from row 1
worksheet.write_row(index + 1, [user.id, user.name, user.email])
end
# Don't forget to close the workbook to save the file!
workbook.close
Rubyによる高度なセル書式設定
Fast_Excelライブラリは、スプレッドシートをプロフェッショナルかつ読みやすくするための豊富なフォーマットオプションを完全にサポートしています。フォントサイズ、フォントファミリー、色(RGB含む)、太字/斜体、下線のバリエーション、打ち消し線、テキスト折り返し、回転、インデント、罫線(細線、二重線など)、配置(水平、垂直)、数値形式などを定義できます。以下は、Rubyアプリ内でExcelワークシートのセル、行、列にさまざまなフォーマットを適用する方法を示す非常に有用な例です。
Ruby API を使って Excel ワークシートに高度な書式設定を適用する方法は?
require 'fast_excel'
workbook = Fast_Excel.open("formatted_report.xlsx")
# Create a bold format
bold = workbook.bold_format
# Create a custom number format
currency_format = workbook.number_format("$#,##0.00")
worksheet = workbook.add_worksheet("Sales Report")
# Set column widths and formats
worksheet.set_column(0, 0, 20)
worksheet.set_column(1, 1, 15, currency_format)
# Write a header row with bold formatting
worksheet.append_row(["Product", "Revenue"], bold)
# Write data rows
worksheet.append_row(["Product A", 15000])
worksheet.append_row(["Product B", 25000])
workbook.close
Ruby APIでの列と行の操作
Fast_Excelライブラリは、Rubyアプリ内でExcelスプレッドシートの行と列を操作することを可能にします。列や行のサイズに対して完全なコントロールを提供します。特定の幅や高さを設定でき、Fast_Excelは文字列値に対して自動幅もサポートしています。以下の例は、Rubyコマンドを使用してExcelスプレッドシートの行と列を操作する方法を示しています。
Ruby でスプレッドシートの行または列の幅と高さを設定する方法は?
require 'fast_excel'
workbook = Fast_Excel.open("column_width.xlsx")
worksheet = workbook.add_worksheet
# Set the width of the first column to 30
worksheet.set_column(0, 0, 30)
# Set the height of the first row to 40
worksheet.set_row(0, 40)
worksheet.append_row(["This is a long string that needs more space"])
workbook.close
より高速で高性能
オープンソースのFast_Excelライブラリは非常に高速で、特に大規模データセットにおいて純粋なRuby Gemを大幅に上回ります。Fast_Excelはlibxlsxwriter(Cライブラリ)を使用しているため、操作は純粋なRubyライブラリよりもはるかに高速です。ベンチマークでは、Axlsxなどの他製品を数倍上回ることが示されています。1,000行の書き込み – Fast_ExcelはAxlsxの約3〜4倍速く、大量データ(20,000行)でも依然として大幅に高速です。