Hongyi Zhao <hongyi.z...@gmail.com> writes: > On Tue, Dec 29, 2020 at 5:40 PM Jean Louis <bugs@gnu.support> wrote: >> >> * Hongyi Zhao <hongyi.z...@gmail.com> [2020-12-29 07:55]: >> > From this point of view, if we want to have both full-features and >> > powerful capabilities in manipulating spreadsheet, it seems that only >> > the python based programmatic tools/packages, say, openpyxl >> > <https://openpyxl.readthedocs.io>, can meet the requirements >> > currently. >> >> What are you requirements? > > I use Linux as my working environment exclusively. So, I can't access > the native MS Office supplied for macOS/Windows. But I sometimes > really need to manipulate and process MS Office documents, especially > DOCX and XLSX files. Though there are some free and open source office > suites, e.g. LibreOffice, but none of them can completely compatible > with the MS Office. > > So, I want to find a way that can be used to programmatically complete > any possible work done by MS Office word/excel.
For directly reading Excel sheets I highly recommend "readxl" from the R package bundle "tidyverse". https://r4ds.had.co.nz/ It's an investment though but it pays in the long run for serious data science. After processing you should be able to write data in an excel file with the "writexl" package. (Did not test it, never had the need to export into Excel. :-)) By the way, I'm mostly doing data processing in org-mode R source blocks. And I'm also converting data into org-mode tables but mostly small ones for latex table exports. And you can also do spreadsheet calculations with them https://orgmode.org/manual/The-Spreadsheet.html Here's a small example #+LATEX: \definecolor{VitescoYellow}{RGB}{242,229,0} #+LATEX: \rowcolors[]{1}{VitescoYellow!100}{VitescoYellow!5} #+caption: Required motor torque to reach src_R{N} rpm in src_R{T} s | *Cases* | *Torque* in Nmm | |------------+------------------| | Best case | 9.5 | | Worst case | 11.6 | #+TBLFM: @2$2='(org-sbe mintorque):: @3$2='(org-sbe maxtorque) (Above org table is reading results from named org source blocks.) If you really, really need to return data in MS formats you might have to run a virtual machine with Windows, not that I recommend that but live is ... Hope that is interesting Dieter -- Best wishes H. Dieter Wilhelm Zwingenberg, Germany