rails6 EXCELファイルを読み込む

rails6 EXCELファイルを読み込む

rails6でEXCELファイルを読み込むまでの手順を記述してます。Railsのバージョンは6.1.1を使用してます。

環境

  • OS CentOS Linux release 7.9.2009 (Core)
  • Ruby 2.7.2
  • Rails 6.1.1
  • rbenv 1.1.2-40-g62d7798

rooインストール

excelを読み込むためのgem「roo」をインストールします。

Gemfileに以下を追加します。

gem "roo"

インストールします。

bundle install

EXCEL読み込み

下図のようなEXCELファイルを「Book1.xlsx」という名前で作成します。

「Book1.xlsx」をrailsのプロジェクト配下に置いて、読み込んでみます。

excel = Roo::Excelx.new("/home/username/railsApp/Book1.xlsx")

次に読み込んだ値を、「each_row_streaming」を使用して、すべて出力してみます。

offset : オフセットの行数を指定
max_rows : 読み込む行数を指定

excel.each_row_streaming(offset: 0, max_rows: 2) do |row|
  row.each do |cell|
    logger.debug(cell.value)
 end
end

値を読み込んでいることが確認できます。