# XlsxTools **Repository Path**: adam/xlsx-tools ## Basic Information - **Project Name**: XlsxTools - **Description**: 这是一组电子表格工具,实现对表格的合并、对比,等操作。目前支持xls、xlsx。 - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-11-16 - **Last Updated**: 2021-11-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # XlsxTools #### 介绍 这是一组电子表格工具,实现对表格的合并、对比,等操作。目前支持xls、xlsx。 #### 安装教程 1. 需要 Python3.9 运行环境 2. 需要安装的模块命令: ``` pip install tqdm xlsxwriter pip install xlrd==1.2.0 ``` 注意:xlrd 1.2.0 以后的版本不支持xlsx文件,这点将来换其他模块解决。 #### 使用说明 ##### 生成测试数据工具:testdata.py ``` py testdata.py ``` 会生成符合下列使用说明的测试数据,在实际使用中,不需要该工具。 ##### 合并工具:xlsxmerge.py 1. 命令行参数: ``` py xlsxmerge.py [--help][-i .\xlsfolder\ -f .xls -o outputFileName -t 序号,装货单位 -e 页码:] ``` | 参数 | 说明 | | --- | --- | |--help | 显示当前帮助 | |-i .\xlsfolder\ | 输入将要被合并文件的目录 | |-f .xls | 将要被合并文件的扩展名,仅支持“.xls”和“.xlsx” | |-o outputFileName | 输出合并后的文件名,无须填写扩展名 | |-t 序号,装货单位 | 指示该行是标题行的前若干个单元格值,用中文逗号“,”分隔 | |-e 页码: | 指示该行不再是数据行的前若干个单元格值,用中文逗号“,”分隔 | 2. 示例: ``` py xlsxmerge.py -i .\testData\ -f .xls -o output-Merge -t 序号,装货单位 -e 页码: ``` ##### 对比工具:xlsxcontrast.py 1. 命令行参数: ``` py xlsxcontrast.py [--help][-same|-different][-l fileName0.xls -r fileName1.xls -o outputFile.xls -c B,C,D] ``` | 参数 | 说明 | | --- | --- | |--help | 显示当前帮助 | |-same | 筛选相同的行(默认) | |-different | 筛选不同的行(与 -same 不能同时使用) | |-l fileName0.xls | 左表的文件路径 | |-r fileName1.xls | 右表的文件路径,与左表一致表示对自身进行对比 | |-o outputFile.xls | 输出结果的文件路径 | |-c B,C,D | 参与对比的列名 | 2. 示例1 对比自身,找出相同行: ``` py .\xlsxcontrast.py -same -l .\testData.xls -r .\testData.xls -o .\output-same.xls -c B,C,D ``` 输出文件会复制左表整行,并在最右边插入一列,内容如下: >.\testData.xls[row:6312] <--> .\testData.xls[row:1648] 表示:左表文件之6312行,与右表文件之1648行相同 3. 示例2:对比左右两表,以左表为准,找出右表缺失的行: ``` py .\xlsxcontrast.py -different -l .\testData.xls -r .\testData2.xls -o .\output-different.xls -c B,C,D ``` 输出文件会复制左表整行,并在最右边插入一列,内容如下: >.\testData.xls[row:16] <--> .\testData2.xls[row:None] 表示:左表文件之16行,在右表中找不到相同的行 #### 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request #### 特技 1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md 2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) 3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) 6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)