Es más probable que una aplicación .NET sea asegurable, ya que se realiza un gran esfuerzo en su seguridad y hay muchas opciones.
Por otra parte,
VBA solo está diseñado para proporcionar cierto nivel de automatización a Office, que pueden utilizar los usuarios avanzados más que los desarrolladores. No se actualiza mucho y tiene un modelo de seguridad bastante más débil.
Habiendo dicho eso, no estoy seguro de cuánta diferencia verías en el mundo real. El principal problema con VBA, al menos en entornos de tipo empresarial, es que el modelo de seguridad no es tan confiable, puede ser difícil lograr que los departamentos de TI permitan que VBA se ejecute.
Así que realmente depende del entorno en el que necesita ejecutarlo. No solo tiene que pensar en la seguridad, sino también en cómo se entregará a las computadoras cliente, cómo se mantendrá, a qué restricciones operarán las PC cliente, cuántas configuraciones diferentes necesitará soportar y ese tipo de problemas. . No tiene sentido tener algo seguro que se pueda mantener en los entornos reales del usuario final.
En particular, tenga en cuenta el problema en su segundo enlace acerca de no haber agregado una referencia. Recuerde que esto debe suceder en cada PC y que las referencias pueden cambiar con los cambios y actualizaciones en la PC. Esto hace que las aplicaciones de VBA compatibles estén llenas de problemas.