从CSV文件创建ODS工作表

4
我有一组CSV文件,需要将它们转换成一个包含多个选项卡工作表的ODS(甚至Excel)电子表格。目前我正在使用Python的pyexcel库,但它存在漏洞且速度非常慢。
Libreoffice有一个很好的文件转换实用工具,但我没有看到任何支持工作表选项卡的功能。是否有一种简单的脚本方式可以实现这个功能?

你想使用Calc打开(大量的?)文件,然后将所有文件的Sheet1复制到一个主文件中吗? - Lyrl
我想找到一种方法将多个CSV文件合并成一个ODS文件,每个CSV文件都有自己的Sheet1、Sheet2等。 - Rachie
你尝试过使用pyexcel吗?你看到了哪些错误?对于制表符分隔的CSV文件,pyexcel期望使用“*.tsv”格式。 - chfw
一个宏(使用您选择的语言)是否可以像这样工作:使用Calc打开CSV文件并选择适当的过滤器,将选项卡重命名为“CSVfilename_Sheet1”;重复下一个CSV文件,将第二个文件中的所有工作表复制到第一个文件中,在不保存第二个文件的情况下关闭第二个文件;对所有CSV文件重复此操作;保存第一个文件?我不会说它很简单,但我不确定还有其他自动化这种事情的方法。 - Lyrl
1个回答

11

来到这个主题时,已经过去了800天自从问这个问题,但我刚做完完全相同的事情并将过程发布。

UBUNTU LINUX的快速命令:

sudo apt-get install gnumeric ssconvert --merge-to=OUTPUT-FILE.xls *.csv

更多细节:

  1. 确保您有访问Linux或Mac计算机的权限。

  2. 安装程序。因此,在Debian / Ubuntu上使用sudo apt-get install gnumeric,在RHEL上使用sudo dnf install gnumeric,在Mac上使用brew install gnumeric

  3. 运行ssconvert --merge-to=OUTPUT-FILE.xls *.csv

  4. *.csv将选择当前文件夹中的每个csv文件。您也可以输入多个文件名。

  5. 如果您在Linux上运行并且已安装LibreOffice,则可以通过libreoffice OUTPUT-FILE.xls直接从命令行打开此文件。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接