Method: XlsxWriter::Worksheet#merge_range
- Defined in:
- ext/xlsxwriter/worksheet.c
#merge_range(range, value = "", format = nil) ⇒ self #merge_range(cell_from, cell_to, value = "", format = nil) ⇒ self #merge_range(row_from, col_from, row_to, col_to, value = "", format = nil) ⇒ self
Merges range
, setting string value
with format
.
ws.merge_range('A1:D5')
ws.merge_range('A1', 'D5', 'Merged cells')
ws.merge_range(0, 0, 4, 3)
617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 |
# File 'ext/xlsxwriter/worksheet.c', line 617
VALUE
worksheet_merge_range_(int argc, VALUE *argv, VALUE self) {
char *str = "";
lxw_format *format = NULL;
lxw_col_t col1, col2;
lxw_row_t row1, row2;
VALUE workbook = rb_iv_get(self, "@workbook");
rb_check_arity(argc, 1, 6);
int larg = extract_range(argc, argv, &row1, &col1, &row2, &col2);
if (larg < argc) {
str = StringValueCStr(argv[larg]);
++larg;
}
if (larg < argc) {
format = workbook_get_format(workbook, argv[larg]);
++larg;
}
struct worksheet *ptr;
Data_Get_Struct(self, struct worksheet, ptr);
worksheet_merge_range(ptr->worksheet, row1, col1, row2, col2, str, format);
return self;
}
|