我需要一个页面来下载文件以导出xls / xlsm文件中的数据,并且在文件xls / xlsm中,我需要添加代码宏。里亚尔的红宝石,我怎么能这样做?
VBA代码包含在xlsm:
中Option Explicit
Option Base 1
Sub HelloWorld()
MsgBox "Hello world !"
End Sub
答案 0 :(得分:0)
最近我不得不用工作做到这一点,我发现最方便的工具是axlsx_rails
宝石。它允许我在ruby中生成和下载我希望的任何数据的excel文件。
这是一个链接:https://github.com/straydogstudio/axlsx_rails
以下是它可以做的简单摘要:
wb.add_worksheet(:name => "Table") do |sheet|
sheet.add_row ["Build Matrix"]
sheet.add_row ["Build", "Duration", "Finished", "Rvm"]
sheet.add_row ["19.1", "1 min 32 sec", "about 10 hours ago", "1.8.7"]
sheet.add_row ["19.2", "1 min 28 sec", "about 10 hours ago", "1.9.2"]
sheet.add_row ["19.3", "1 min 35 sec", "about 10 hours ago", "1.9.3"]
sheet.add_table "A2:D5", :name => 'Build Matrix', :style_info => { :name => "TableStyleMedium23" }
end
要在rails中处理此问题,您需要设置控制器以响应.xlsx
并在您点击控制器时呈现文件,如gem网站上的更多信息所示。希望这有帮助!