merged_range/
merged_range.rs1use xlsx_batch_reader::{get_num_from_ord, is_merged_cell, read::XlsxBook};
2
3fn main() -> Result<(), Box<dyn std::error::Error>> {
4 let mut book = XlsxBook::new("xlsx/test.xlsx", true)?;
5 for shname in book.get_visible_sheets().clone() {
6 let mut sheet = book.get_sheet_by_name(&shname, 100, 0, 1, get_num_from_ord("C".as_bytes())?, true)?;
9
10 let (_, _header) = sheet.get_header_row()?;
12 if let Some((_rows_nums, _rows_data)) = sheet.get_remaining_cells()? {
13 };
15
16 let merged_rngs = sheet.get_merged_ranges()?;
18 match is_merged_cell(merged_rngs, 2, get_num_from_ord("A".as_bytes())?) {
19 (true, None) => {
20 println!("a merged cell(not top left cell)");
21 },
22 (true, Some((nrow, ncol))) => {
23 println!("a merged cell(top left cell), taking {nrow} row(s) and {ncol} column(s)");
24 },
25 _ => {
26 println!("not a merged cell");
27 }
28 }
29 }
30 Ok(())
31}