I have had this long term vision of being able to save VBA files on GitHub (.bas, .cls, and .frm) and being able to do all the CI/CD tasks, including distribution. To that end, I’ve been working with python to create 1. A tool to take VBA files and compress/obfuscate them as expected and create all the VbaProject files (https://github.com/Beakerboy/vbaProject-Compiler/tree/dev) 2. Seperate projects that implement the “crypto” and compression algorithms. 3. An OLE file writer (https://github.com/Beakerboy/MS-CFB/tree/dev) 4. A tool to wrap the OLE file in the zip archive.(https://github.com/Beakerboy/Excel-Addin-Generator)
Unfortunately, it’s buggy and I have not been able to create an Addin that excel accepts as “one of us”. I just discovered POI and hope it can do what I want. I imagine there is a series of steps to: Create a blank workbook. Add modules and class modules “Paste” in my custom code. Save as xlam ???? Profit! Could anyone chime in with any roadblocks I may encounter in this new attempt? Also, a purely academic question, the MS-OVBA document describes an algorithm to compress and decompress VBA code to ready it for insertion into the OLE container. It turns out, the implementation that Microsoft uses to compress is different then the algorithm that is published, however, the both will decrypt to the same original source. Does POI use the published algorithm, or has someone figures out the method that Microsoft uses?
