ruby-on-rails - 如何在 Ruby on Rails 中使用 axlsx 将更多列中的数据添加到已经在 Excel 中编写的行
问题描述
我正在使用 axlsx 在 Ruby on Rails 中创建 Excel 工作表
说,我使用类似这样的代码将数据添加到一行
some_array.each do |element| #array has a few hundreds of elements
sheet.add_row [element.dcol1, element.dcol2, element.dcol3] #start from row1 of Excel sheet
# the above statement would print data into columns A, B & C
end
上面的这个循环在 3 列中向 Excel 中添加了数百条记录 -A, B & C
现在,我想添加完全不同的数据(比如来自some_other_array
);我想开始again from row1
在 Excel 中打印这个数组但是从说column J
我该怎么做呢?
解决方案
axlsx
允许您编辑文件中的任何单元格,而无需add_row
使用sheet.rows[ROW_NUMBER].cells[NUMBER].value = VALUE
.
要实现您想要的,您可以执行以下操作:
some_array.each_with_index do |element, index|
sheet.rows[index].cells[10] = element.dcol1
sheet.rows[index].cells[11] = element.dcol2
sheet.rows[index].cells[12] = element.dcol2
end
推荐阅读
- python - 如何将列表中的元素分配给Python中列表中的另一个元素
- c++ - C++ 可变参数类型实例化
- perl - 从带有标题的 tsv 文件加载 PDL 矩阵无法按预期工作
- c++ - 接受 const 和非 const 参数的模板方法
- scala - 使用火花从文本文件中删除空行
- c++ - C++20 概念:需要表达和完美转发
- html - Angular ERROR TypeError:无法读取未定义的属性“forEach”
- c# - C# Web API:为什么 int 值会自行更改为 hex 值?
- drupal - Drupal 8 PHPUnit 测试自定义模块
- java - 我们在 Java HashMap 的 put() 方法中比较什么?