Question

Je cherche une possibilité d'ajouter un niveau de sécurité supplémentaire à mes projets Excel.

Nous avons plusieurs utilisateurs. Certains qui savent (et sont destinés à) le mot de passe qui déverrouille les macros VBA. D'autres ne sont pas destinés à être en mesure d'accéder.

Je ne sais pas si quelqu'un a le mot de passe qui ne devrait pas (changer le mot de passe n'a pas cessé de falsification) donc je voudrais désactiver la fenêtre d'édition VBA pour tout utilisateur non approuvé. Je ne peux trouver aucune façon de le faire bien, est-il possible?

Je ne peux pas désactiver l'option d'enregistrement que tous les utilisateurs doivent enregistrer les données.

J'ai essayé de désactiver le ruban icônes etc, mais sans succés. Il est encore possible d'ouvrir la fenêtre de code avec Alt + F11.

Toute aide serait grande.

Était-ce utile?

La solution

I am coming from Excel 2003, but this concept should work for you as well. You could think of

  • trapping the Alt-F11 key (Application.OnKey "%{F11}" "MyNullSub") plus
  • disable the relevant menu entries (Application.CommandBars(...).FindControl(ID:=..).OnAction = "MyNullSub")

with

Sub MyNullSub()
' do nothing
End Sub

as a dependency of an entry in the registry that needs to be present (GetSetting(...)), but this will only help until this additional secret is spread around in the same way the (changed) passwords apparently did.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top