Thank you.
Poor. It’s poor.
Can you elaborate that, please?
Trivial little code snippets without conceptual UNO knowledge mixed with very basic facts about Python (such as “tuples are immutable arrays”). Zero learning curve. People end up with more questions than before without having a clue how to find out things. Too shallow waters to learn swimming in.
My reference for a very well written 3rd party documentation is Java LibreOffice Programming
It teaches first things first and all you need to know beforehand is your programming language which is Java in this case. If you can read Java but prefer to write in Python, this tutorial is a lot more helpful than any collection of trivial snippets.
Ignore the prejudicial noise, as you say openpyxl generated files work fine in both excel and calc. Openpyxl is very easy and natural to work with, pretty well the opposite of uno. In my situation excel was the main environment so I wrote vba macros as you have done to handle hundreds of thousands of excel files. Calc worked fine with the *.xlsm, and although it wouldn’t run the vba macros, I could still use the file, save it, then use the changed file in excel. Be warned, always be prepared for it to fail.
.
Calc, and excel with a bit of work, can run python code. I’d approach it by splitting the data and the app. Depending how sophisticated the macros are, customised vba code might suffice. I’ve seen instructions for having a single file with both excel and calc macros but I didn’t get around to doing it. Worst case, write a calc add-in with the interface to manage the spreadsheet.
.
http://www.biochemfusion.com/doc/Calc_addin_howto.html might be worth looking at.
.
As you say, there is no real python programming resource for LO. Advice to learn Basic or Java to understand the API so you can program in python is about as good as it gets.