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

Ruby 如何使用axlsx在循环中以编程方式引用单元格,ruby,axlsx,Ruby,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.seria

我希望以编程方式将引用同一行中其他单元格的行添加到工作表中。我已经做到了:

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函数可以在Internet上轻松找到

在您的特定情况下,您可以使用:

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

这里,
A:A
表示“使用单元格A1、A2、A3、A4…”

您正在将行添加到工作表中。要在
AXLSX
中插入图纸,无需指定任何索引<代码>工作表。添加行([值数组])是您正在使用的全部内容。我看不出“行”在哪里被跟踪。你能解释一下吗?看看生成的电子表格。我有一列数字是1到10,另一列填充了公式,将第一列中的数字乘以2。我正在寻找一种更好的方法来生成第二列(A2、A3、A4,…)中的单元格引用。