I just finished cleaning up a library I’ve been working on for reading Excel documents (XLSX / SpreadsheetML):
I’ve tried to separate out the various bits, so you if you want to read Microsoft’s “Open Packaging Conventions” files (the generic packaging for all Microsoft Office docs), there’s open_packaging
. If you want to read SpreadsheetML files (i.e. Excel files) there’s spreadsheetml
, and if you just want to open an Excel file and get the data out, there’s easy_xlsx
, which exposes an XLSX file as a list of sheets (sheet name, rows) where each row is a list of values (date, datetime, number, string, time of day).
The interface isn’t exactly ideal, since CamlZip can only open files, and date and time formats aren’t built into the standard library, so this requires core_kernel
. It’s also not particularly efficient right now, but pull requests are welcome!
If you have files where easy_xlsx
doesn’t do the right thing, please open an issue and attach the file.
I would upload it to opam but opam prepare
is giving me empty folders, and I’ve run out of time to spend on it this weekend.