rsv_lib/excel/
count.rs

1use crate::args::Count;
2use crate::utils::cli_result::CliResult;
3use crate::utils::progress::Progress;
4use crate::utils::reader::ExcelReader;
5
6impl Count {
7    pub fn excel_run(&self) -> CliResult {
8        // progress
9        let mut prog = Progress::new();
10
11        // open file and count
12        let range = ExcelReader::new(&self.path(), self.sheet)?;
13        let mut n = range.len();
14
15        // default to have a header
16        if !self.no_header && n > 0 {
17            n -= 1;
18        }
19
20        println!("{n}");
21        prog.print_elapsed_time();
22
23        Ok(())
24    }
25}