簡體   English   中英

紅寶石axlsx gem:無需使用添加行即可將公式分配給axlsx工作表

[英]ruby axlsx gem: assign formula to axlsx worksheet without using add-row

根據官方示例,可以在add_row https://github.com/randym/axlsx/blob/master/examples/example.rb#L355期間向工作表分配公式

我的問題是,表格填滿后是否可以將公式分配給列?

這是將公式添加到現有單元格的示例。

pk = Axlsx::Package.new
wb = pk.workbook
sheet = wb.add_worksheet(name: 'Test')
sheet.add_row(['First', 'Second', 'Third'])
sheet.add_row([1, 1, 1])
sheet.add_row([2, 2, 2])
sheet.add_row([3, 3, 0])    # we will be updating the last cell in this row (C4)
sheet.add_row([4, 4, 4])

cell = sheet['C4']
cell.type = :string         # it is important to ensure the type of the cell is set before adding the formula
cell.value = '=A3+A4'

pk.serialize("example.xlsx")

這是一個動態更新單元格公式的示例:

pk = Axlsx::Package.new
wb = pk.workbook
sheet = wb.add_worksheet(name: 'Test')
sheet.add_row(['First', 'Second', 'Third'])
sheet.add_row([1, 1, 1])
sheet.add_row([2, 2, 2])
sheet.add_row([3, 3, 3])
sheet.add_row([4, 4, 4])

cells = sheet["C2:C5"]  # select an array of cells

cells.each do |cell|
  row_index = cell.row.index + 1
  cell.type = :string
  cell.value = "=SUM(A#{row_index}:B#{row_index})"
end

pk.serialize("example2.xlsx")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM