4

行を作成するロジックを含む axlsx ファイルがあります。そこに、特定の条件が満たされたときに、最後に作成されたセルをマージしたいというチェックがあります。これどうやってするの?

セルを結合する方法を私が見た唯一の方法は、結合するセルを次のように指定することです。

sheet.merge_cells "A2:B2"

しかし、動的シートがある場合、作成された最後の行のセルを結合するにはどうすればよいですか?

4

2 に答える 2

7

Axlsx merge_cells は、例のように文字列、またはセルの配列を受け入れます。その範囲で、行、列、およびそれらのセル コレクションを使用して検索し、結合するセルの配列を渡すことができます。

何かのようなもの:

sheet.merge_cells sheet.rows.last.cells

参考までに、Worksheet#merge_cell に関するドキュメントを次に示します。

# Creates merge information for this worksheet.
# Cells can be merged by calling the merge_cells method on a worksheet.
# @example This would merge the three cells C1..E1    #
#        worksheet.merge_cells "C1:E1"
#        # you can also provide an array of cells to be merged
#        worksheet.merge_cells worksheet.rows.first.cells[(2..4)]
#        #alternatively you can do it from a single cell
#        worksheet["C1"].merge worksheet["E1"]
# @param [Array, string] cells
def merge_cells(cells)
  merged_cells.add cells
end
于 2013-06-24T21:01:09.773 に答える