如何使用axlsx gem将列添加到现有行?
我正在尝试格式化我的xlsx文件,但是我遇到了一些问题。 例如,我需要添加列到现有的行。 例如这里是我的代码:
wb.add_worksheet(name: "Sums") do |sheet| sheet.add_row ["1.", "Rodiklis"], :style=>[title] sheet.add_row ["1.1", "Rekomendacijų vertė"] @departaments.each do |departament| sheet.add_row ["", departament.name] end @all_items.each do |summary| tyfcb = 0 rgi = 0 rgo = 0 rgirgo = 0 total = 0 rgirgo_per_user = 0 meeting_1_2_1 = 0 meeting_1_2_1_per_user = 0 ceu = 0 ceu_per_user = 0 v = 0 v_per_user = 0 summary.departament.contacts.each do |c| items = c.items.where(summary_id: summary) tyfcb += c.item_x(items, 'tyfcb') rgi += c.item_x(items, 'rgi') rgo += c.item_x(items, 'rgo') meeting_1_2_1 += c.item_x(items, '1_2_1') total += 1 ceu += c.item_x(items, 'ceu') v += c.item_x(items, 'v') end rgirgo = rgi + rgo rgirgo_per_user = rgirgo.to_f / total.to_f meeting_1_2_1_per_user = meeting_1_2_1.to_f / total.to_f ceu_per_user = ceu.to_f / total.to_f v_per_user = v.to_f / total.to_f sheet.add_row [summary.departament.name,summary.id, tyfcb] sheet.add_row [summary.departament.name,summary.id, rgirgo] sheet.add_row [summary.departament.name,summary.id, sprintf('%.2f', rgirgo_per_user)] sheet.add_row [summary.departament.name,summary.id, meeting_1_2_1] sheet.add_row [summary.departament.name,summary.id, sprintf('%.2f', meeting_1_2_1_per_user)] sheet.add_row [summary.departament.name,summary.id, ceu] sheet.add_row [summary.departament.name,summary.id, sprintf('%.2f', ceu_per_user)] sheet.add_row [summary.departament.name, summary.id, v] sheet.add_row [summary.departament.name,summary.id, sprintf('%.2f', v_per_user)] end end
所以从代码中我们可以看到我产生了大量的tyfcb,ceu等variables。 所有这些都在新的一排打印。 我想在一行中打印所有的tyfcbvariables,在一行中打印所有的ceuvariables等等。我应该如何处理axlsx gem? 感谢您的回答。
使用add_cell
add_cell(value = '', options = {}) ⇒ Cell
这将根据提供的数据向行添加单个单元格,并更新工作表的自动调整数据。