概要
RUby on RailsなどでExcelファイルを扱う便利 Gem でExcelファイルを開くときにWarningが出る場合があります。調べても情報がなく対策しにくいですが、警告抑止用のグローバル変数を用いて停止できます。
詳細
RUby on RailsなどでExcelファイルを扱う便利 Gem でExcelファイルを開くときにこのような警告が出る場合があります。
WARNING: RubyXL::Workbook is not aware how to process RubyXL::SheetMetadata
これは、Microsoft365で最新のExcelを保存した際にも出て、作成者などの情報を削除しても出て、直接の原因はわかりません。Excelシートの操作などは問題なくできるため、metadataが重要ではない場合には、テストなどで出力されるとログもみにくくなるため抑止することも選択肢のひとつです。
initializeや利用時に以下のようにグローバル変数をセットすることで警告を抑止できます。
RubyXL.class_variable_set(:@@suppress_warnings, true)
ここのコードをたどって警告出力箇所を探し、発見しました。
環境
rubyXLのバージョンは2024/11/22時点で最新の 3.4.27 です。