Практически, Обфускаторы VBA не защищают код VBA, потому что они оставляют структуру алгоритма неизменной, что можно проследить до исходных алгоритмов, которые затем можно восстановить.
Преобразование вашего кода VBA в VB6 означает, что ваше приложение будет ограничено 32-битным Excel (VB6 не имеет 64-битной версии) и может быть декомпилировано декомпиляторами VB, такими как https://www.vb -decompiler.org /
Преобразование вашего VBA-кода в VB.NET также не является идеальным решением, так как .NET имеет механизм «отражения», который может преобразовывать скомпилированный код сборки .NET в исходный исходный код.
Вы можете преобразовать свой код VBA в C / C ++ , что будет очень эффективной формой защиты, но, поскольку C / C ++ и VBA являются очень разными языками программирования, преобразование кода VBA в C / C ++ сложен, подвержен ошибкам и, как правило, не стоит огромных затрат времени и усилий.
Существует инструмент под названием VbaCompiler для Excel (http://vbacompiler.com)), который преобразует код VBA в код языка C и затем компилирует его в DLL . Уровень Защита, которую обеспечивает этот инструмент, аналогична защите вашего VBA-кода в C / C ++, но без огромного количества ручной работы, необходимой для такого процесса.