#split #xlsx #tool

bin+lib xlsx_split

自动拆分 xlsx 文件的工具

2 个稳定版本

1.0.1 2024年5月23日
1.0.0 2023年7月25日

#19 in #xlsx

MIT/Apache

20KB
348

Xlsx-Split


解决的问题

在日常工作中,由于保密等原因,我们可能需要根据 Excel 表中某一列的内容,对表格进行分割拆分为多个表格,如根据机构名称将一张大明细表拆解成各个机构的明细表,这项工作人工来做非常繁琐,因此我们开发了这个自动拆分库。

工具用法

1. 安装

cargo install xlsx_split

2. 用法

xlsx_split [选项] <SRC> <DATA_START_ROW> <GROUP_COL_NAME>

参数:
  <SRC>             要分割的文件完整路径
  <DATA_START_ROW>  数据起始行
  <GROUP_COL_NAME>  分组列名称,如:A,支持多个列,如AB

选项:
  -o, --output <OUTPUT>      输出文件到其他文件夹,默认与被分割后文件存放统一文件夹
  -p, --password <PASSWORD>  对输出文件进行加密的密码
  -h, --help                 Print help
  -V, --version              Print version

库用法

use xlsx_split::core::XlsxSplit;

#[test]
fn test_split() {
    let src = "/home/feiy/Desktop/test.xlsx";
    // 从第4行开始为数据
    let data_start_row = 4;
    // 按照为B列内容进行分割拆分
    let group_col = "B";

    let out_dirs = XlsxSplit::split(
        src,
        data_start_row,
        group_col,
        Some("/home/feiy/Desktop/out"),
        #[cfg(feature = "encrypt")]
        Some("abc95599"),
    )
    .unwrap();
    println!("{:#?}", out_dirs);
}

依赖项

~27–36MB
~468K SLoC