Hi everyone,

I've built a complex spreadsheet that I would like to distribute online. However I'm struggling to find an appropriate solution to do so. I initially looked at compilers such as XLSPadlock, DoneEx, Xcell Compiler, etc.. but I realized having to distribute an EXE file online is an hassle (can't upload it online directly, needs to be zipped, usually blocked by browsers, antivirus, etc and doesn't work on mac computers..). So I'm now looking to find a way to do so without compiling anything (i.e. everything needs to be integrated in the spreadsheet via VBA). I know there is no ultimate protection method for excel files and if someone really wants to hack them, he will find a way, but at least I can try to make the process harder.

I found online a project called Unviewable+ that apparently helps secure a workbook and could make common hacks harder (again I know it's not completely hack-proof) and I would like you opinion on that? Do you think it's worth the cost or can I achieve a similar result with some VBA guides?

Second aspect of my problem is the licensing. The project mentioned above only helps with protecting the spreadsheet, but does nothing to prevent its illegal distribution. I'm therefore looking for a solution to allow for hardware-lock licensing (so even if the spreadsheet is distributed, it won't work without a valid license). The idea is that, at opening, the spreadsheet would ask for a license key and communicate with my website to check if it is valid and then open the file only on one identified computer (the license key would have already been generated at the time of the online purchase).

The developer of the Unviewable+ project shared with me the following names for licensing programs / codes:

License Spring
SoftWorkz
Wyday
Copyminder of Microcosm
Soraco
SSware
License Spot
Enigma Protector
Obsidium
Keyzy

Do you guys know any of them? I'm not sure how easy it is to integrate them with an excel spreadsheet (or if they even are compatible with such file) or if there is an simpler alternative through VBA to get the same result?
For additional background, my website runs on Wordpress and sales are made via the Woocommerce plugin (just in case you guys are aware of an easy way to do what I'm looking for)

I'm hoping others have been in this situation before and can provide some guidance on this topic.

Thanks a lot