December 1, 2024

I wanted a method to enter from and output to Excel .xlsx and .xls file in my data wrangling software, Easy Data Transform. I had beforehand used Qt’s ActiveQt courses to speak to Excel through ActiveX, in my seating planner software, PerfectTablePlan. However this got here with distinct limitations:

  • Excel should be put in on the shopper pc.
  • ActiveQt solely works on Home windows.

I wished to have the ability to learn and write Excel file on Home windows and Mac from my C++/Qt utility, whether or not Excel is put in or not. I’d somewhat commit suicide with a cheese grater, than attempt to write my very own code to parse no matter horrific format Excel is written in. So I regarded round for a library.

I ended up shopping for a licence for LibXL, from XLWare, again in 2019. It has been working nice ever since. I now additionally use it in PerfectTablePlan v7.

Issues to love:

  • Obtainable as a library for Home windows, Mac, Linux and iOS (I’ve solely used it for Home windows and Mac, thus far).
  • Accessible from a number of languages, together with: C, C++, .Web, Delphi, PHP, Python, PowerBASIC and Fortran.
  • Instance code is out there in C++, C, C# and Delphi.
  • Good assist.
  • Common updates.
  • Affordable pricing.
  • No per-user charges.

The API is a bit low-level for my style, however I suppose that’s inevitable while you assist C in addition to C++. Studying and writing is sluggish in comparison with studying and writing the identical information to/from a CSV file. However, little question, that’s as a result of limitations of the Excel file format.

I don’t have any affiliation with LibXL past being a paying buyer, and I haven’t been requested to write down this. I simply wished to present a shout-out to the developer, Dmytro, for his sterling work. Lengthy could it proceed.