Колонка и строка схлопываются в файле xlsx

Меня попросили создать отчет в формате Excel (.xlsx) со свернутыми строками и столбцами.

Приложение написано на ruby/rails и использует axlsx gem для генерации excel.

На данный момент я не могу иметь свернутый символ «+», обращенный к скрытой строке или столбцу, который позволяет отображать/скрывать строки/столбцы.

Кто-нибудь знает, как я могу создать этот разрушающийся эффект? Даже с другой технологией?

Спасибо,

Майкл


person Michael A.    schedule 13.12.2012    source источник


Ответы (1)


Это можно сделать с помощью axlsx.

require 'axlsx'
xlsx = Axlsx::Package.new
wb = xlsx.workbook
wb.add_worksheet(name: 'outline') do |sheet|
  sheet.add_row [nil, nil, nil, nil, nil, nil, nil, Time.now, 149455.15]
  sheet.add_row [nil, nil, nil, nil, nil, nil, nil, Time.now,14100.19]
  sheet.add_row [9500002267,  'foo', 'bar', 'penut', nil, 1212, 1212, Time.now,14100.19]
  sheet.rows[0..2].each do |row|
    row.outline_level = 1
  end
  sheet.column_info[0..2].each do |col|
    col.outline_level = 1
  end
  # This is required to show the [+] symbols
  sheet.sheet_view do |view|
    view.show_outline_symbols=true
  end
end
xlsx.serialize 'outline.xlsx'

Вам нужно указать layout_level в интересующей вас строке или столбце_info и установить для show_ouline_symobols значение true.

Лучший

случайный

person randym    schedule 13.12.2012
comment
P.S. данные просто пух, это не влияет на изложение. - person randym; 13.12.2012