我在Rails项目中使用axlsx_rails
来生成带有验证和下拉列表的excel文件。生成文件后,我尝试在MS Excel中打开该文件,并说需要修复该文件,并且清除了所有验证和下拉菜单。
版本
axlsx_rails - 0.1.5
axlsx - 1.3.6
rubyzip - 1.2.0
rails - 4.1.2
ruby - 2.2.2
代码
@excel = Axlsx::Package.new
@excel.workbook.add_worksheet(name: "Samples") do |ws|
ws.add_row @field_names
sheet.add_data_validation("G2:G1000", {
:type => :list,
:formula1 => '"Jim", "Tom", "Jack"',
:showDropDown => false,
:showErrorMessage => true,
:errorTitle => '',
:error => 'Please use the dropdown selector to choose the value',
:errorStyle => :stop,
:showInputMessage => true,
:prompt => 'Choose the value from the dropdown'})
end
@excel.serialize "tmp/SampleTemplate.xlsx"
使用发送文件
send_file "tmp/SampleTemplate.xlsx"
生成的文件可在LibreOffice中工作,但不能在MSExcel中工作
请帮助
答案 0 :(得分:0)
已解决。问题出在那儿,
:formula_1 => '"Jim", "Tom","Jack"'
我将其更改为
:formula_1 => '"Jim, Tom, Jack"'