如何在使用axlsx的循环中以编程方式引用单元格



我想以编程方式添加行到我的工作表中,引用同一行内的其他单元格。我已经这样做了:

require 'axlsx'
Axlsx::Package.new do |p|
  p.workbook.add_worksheet(name: 'Foo') do |sheet|
    sheet.add_row(['i', 'i*2'])
    for i in 1..10 do
      sheet.add_row([i, "=A#{i+1} * 2"])
    end
  end
  p.serialize('test.xlsx')
end

是否有更好的方法来做到这一点,不涉及跟踪我在哪一行?

您不需要跟踪这些任务的每一行。其中有许多excel函数可以很容易地在互联网上找到。

在你的特定情况下,你可以这样使用:

sheet.add_row([i,"=A:A * 2"])  # No need to iterate over the rows.

这里,A:A表示"使用cell A1, A2, A3, A4 ....."

最新更新