我正在使用 RubyXL gem 来读取 Excel 中生成的 xlsx 电子表格的单元格的背景颜色。如果文件在 LibreOffice 中打开或保存,这将正常工作。如果不这样做,填充颜色'ffffff'
在第一次读取时都会被检测为白色 ( )。
我曾尝试将其File.Open
用作事先复制文件保存的尝试,但没有成功。
cell && cell.fill_color
我使用每行中每个单元格的循环访问背景填充颜色。
目前我已经尝试使用 RubyXL 的工作簿保存来复制保存,如下所示。
book = RubyXL::Parser.parse(path)
book.save
book = RubyXL::Parser.parse(path)
sheet = book.worksheets[0]
sd = sheet.sheet_data
i = 0 ; j = 0;
sheet.each { |row|
row && row.cells.each { |cell|
val = cell && cell.value
j +=1
bg = cell && cell.fill_color
puts val.to_s + "|---|" + bg.to_s
}
j = 0
i+=1
}
有没有办法以编程方式静默地重新保存文件(没有 GUI,没有对话框)?