Bonsoir,
LA solution comme beaucoup ici : l'altruisme !
hélas la protection d'application Excel est impossible à 100% !
Par contre il y a pas mal de solution pour décourager de "voler" les codes.
En premier lieu il faut "forcer" l'utilisation des macros afin de pouvoir par le code VBA surveiller ce qui se passe sur le fichier :
https://www.excel-pratique.com/fr/astuces_vba/forcer_activation_des_macros.php
Par exemple empêcher que l'on renomme d'une feuille :
https://www.excel-pratique.com/fr/astuces_vba/empecher_modification_nom_onglet.php
ou bien :
https://www.excel-pratique.com/fr/astuces_vba/empecher_enregistrement_fichier.php
Ensuite protéger les feuilles de calcul avec masquage des formules, mais cela ne va pas très loin.
Il existe même des procédure qui "cherche" un fichier sur une clé USB, et si ce fichier n'existe pas alors l'application ne s'ouvre pas.
Mais tout ceci est vite mis de coté avec une ouverture par ODT ! Soit il ne marchera pas, mais il permet d'accéder au code et de voir éventuellement les mots de passes, ou dans ce cas l'appel au fichier, etc...
Ensuite le code VBA peut être protégé par mot de passe, ceci est déjà plus complexe à faire sauter bien qu'il y ait des applications pour contourner ce fait.
L'ultime protection est d'obfusquer vos code VBA. Il y a sur le net des applications qui permettent de le faire, ainsi que sur ce site :
https://www.excel-pratique.com/fr/astuces_vba/proteger-code-vba.php
L'avantage ? Si l'utilisateur "casse" le mot de passe de protection, alors il arrivera sur le code VBA mais il sera illisible au premier regard (même au second).
Pour décrypter le code, il devra alors s'armer de patience...
Je dirais que ce n'est pas impossible, mais je pense que la plupart baisseront les bras avant le code !!!
Il existe même des applications qui permettent de transformer une application Excel en "exécutable" autonome...mais je n'y suis pas parvenue ! Pauvre de moi, mais le lien est ici : https://www.excel-pratique.com/fr/telechargements/utilitaires/xlexe-no96.php
@ bientôt
LouReeD
Edit : ci-joint le fichier avec le test sur clé USB, il vous faut un fichier du nom de LRD.DAT sur une clé branchée sur l'ordinateur pour que le fichier s'ouvre. Bien sur ce fichier doit être en combinaison avec un code qui vérifie si les macros sont activées :
Donc voici un fichier qui vérifie si les macros sont activées, il est combiné à une fermeture automatique s'il n'y a pas d'activité sur le fichier :
Voilà