Protéger le code VBA et les macros + 2 autres options
Bonjour la communauté :-))))
BsAlv m'a donné une super idée à laquelle je n'aurais pas pensé car ne sachant pas que c'était possible à réaliser. Je compte sur des passionnés d'Excel ;-)))
Désolé, j'allais encore oublier de donner le mot de passe de protection des cellules ====> seb
Et 2 feuilles sont invisibles sauf pour les usernames définis dans le "ThisWorkbook" ci-après :
Private Sub Workbook_Open()
Dim Arr, b
Arr = Array("BSAA", "Seb DORV", "DORVEAUX Sebastien") 'matrice avec tous les noms qui ont accès à la feuille 2
b = Application.IfError(Application.Match(Application.UserName, Arr, 0), 0) 'vérification personnes
Sheets("Concordance Classmt & Points").Visible = IIf(b, xlSheetVisible, xlSheetVeryHidden) 'très cachée
Sheets("Dossiers").Visible = IIf(b, xlSheetVisible, xlSheetHidden) 'cachée
bOpen = True
s = Dossier
bOpen = False
Proteger
End SubDans un premier temps, trouver un code VBA à inclure dans le code existant pour protéger le code VBA et les macros, c-à-d ne pas pouvoir accéder à l'éditeur quand un utilisateur cliquerait sur "Visual Basic" ou d'ailleurs de n'importe quelles façons pour y accéder. Et ne pas pouvoir accéder aux macros non plus !
Ensuite de créer un bouton qu'on appellerait "VBA" et qui déclencherait une boîte de dialogue, uniquement si je tape le bon mot de passe, avec les 3 options suivantes :
Option 1 :
- L'éditeur VBA et les Macros seraient à nouveau visibles et accessibles.
- Et dès que je fermerai le fichier Excel (quitter le programme), le VBA & les macros seraient à nouveau protégées et impossibles d'accès.
Option 2 :
- VBA et macros complètement désactivées et donc en pause.
- Et pour les feuilles, elles seraient toutes "déprotégées" et donc toutes les cellules accessibles.
En somme, tout absolument tout serait mis en pause dans les différentes feuilles SAUF BIEN ENTENDU CE BOUTON "VBA" qui doit toujours fonctionner si on connaît le bon mot de passe, of course ;-))))
De cette façon, je pourrai, avec cette option 2, changer des formules, supprimer plusieurs lignes du tableau sans contraintes, etc, etc.
Option 3 :
C'est le contraire, tout est remis comme avant. C'est l'inverse de l'option 2 !
Qu'en pensez-vous ? Réalisable ?
Merci beaucoup pour la lecture de mon sujet !!!!!!!!!!!!!! :-)))))))))))))))))))
Bonne semaine :-)))))))))))))))
Et je rappelle que tous les noms de familles saisis dans le tableau sont une pure invention sans lien avec les sportifs qui s'engageront pour le défi des 10 épreuves sportives sur l'ensemble de la métropole et dom/tom qui comptent 188 établissements. MAis je pense que moins d'une centaine participeront réellement ;-))))
Merci :-)))))
Bonjour,
Maintes discutions ont été faites sur le sujet. Aucune approche est fiable à cent-pour-cent.
Pour cacher l'onglet développeur plusieurs techniques sont possibles. Directement au niveau de la gestion du ruban pas très efficace, gestion par Xml, on cache les onglets Excels qui ne sont pas utiles à l'utilisateur. Mais attention il faudra aussi intercepter les touches Alt +F11.
Sinon mettre un mot de passe pour accéder au projet, Dans l'environnement VBE allez sur Outils/Propriété de VBAProject.../Protection/Verrouiller le projet pour affichage. Définissez un mot de passe (Attention le garder en lieux sur)
Mais il faut bien comprendre que sous Excel rien n'est fiable à cent-pour-cent; Un connaisseur peut faire sauter n'importe quel mot de passe en deux minutes.
Bonsoir Jean-Paul,
Nan t'inquiète, personne ne fera le Alt+F11 ou autres car on est tous débutants et on est en réseau fermé Intranet, Ministère de la Justice ! :-)))))))))))))))))
Et quand bien même qqn débloquerait l'éditeur, ça n'est absolument pas grave car rien n'est confidentiel entre nous !!!!!!!
LEs protections c'est davantage pour éviter qu'une personne "tombe", par accident, dans les macros ou le code VBA, fasse des choses, sans faire exprès, qui feraient bugger les pgmes.
Donc si quelqu'un a des solutions, même un peu bancales, et qui nous fabrique une boîte de dialogue avec les 3 options, ON EST PRENEURS !!!!! :-)))))))))))))
Donc on ne cherche pas une solution fiable à 100%. Si c'est à 50%, on sera déjà contents !!! ;-)))))))))))))))
Ta solution de cacher les onglets Excel ne va pas interférer si on ouvre d'autres fichiers Excel ?
Pour le mdp, ça n'est pas un pb.
Encore merci de vous être intéressé en tout cas à notre souci :-)))))))))))
Bonne soirée :-)))))))))))))))))))))))))