Désactiver la touche Majuscule

Comment désactiver la touche [Majuscule] au démarrage d’Access, grâce à la propriété AllowBypassKey ?

La propriété AllowBypassKey interdit effectivement l’usage de la touche [Majuscule] au démarrage. Elle peut être paramétrée en Visual Basic ; voici le code approprié, inspiré de l’aide en ligne d’Access…

Important
L’exemple de code ci-dessus fait appel à la bibliothèque DAO (Microsoft DAO Object Library). Cette bibliothèque doit être associée à votre base de données pour que le programme fonctionne.

Pour plus de détails sur les références, consultez cette page.

Tester

  1. Faites une copie de la base à traiter.
  2. Copiez ce code dans un module Access.
  3. Dans le code, définissez la valeur de blnAutoriserMaj selon que vous souhaitez activer ou désactiver la touche [Maj].
  4. Exécutez la procédure DésactiverMaj.
  5. Fermez la base et réouvrez-la en maintenant la touche [Majuscule] enfoncée.

Des compléments utiles

Contrairement à ce qu’on pourrait croire, la désactivation de la touche [Maj] ne protège pas la base : elle force simplement la prise en compte des options de démarrage (définies par le menu Outils/Démarrage ou par une macro AutoExec, ou par les deux !).

Pour le vérifier, téléchargez la base d’exemple (en annexe de l’article), et ouvrez-la en maintenant la touche [Maj] enfoncée.

Vous obtiendrez un message « Hello world ! » lancé par une macro AutoExec.
La fenêtre de base de données sera masquée (option définie dans Outils/Démarrage).
Par contre, rien n’empêche d’ouvrir le menu Fenêtre / Afficher et de faire apparaître la base complète.

Vous aimerez aussi...

4 réponses

  1. Hervé Inisan dit :

    Amine > La protection de la base est un sujet compliqué. On peut effectivement masquer des choses, mais ça ne suffit pas (si les objets sont seulement masqués, il est possible facilement de les refaire apparaître). Si tu travailles en MDB, la « sécurité utilisateur » est plus avancée.

  2. Amine dit :

    bonjour,

    merci pour l’article,

    comment faire pour protéger la base (masquer tt)

  3. Hervé Inisan dit :

    Dieudonné > Pour les touches principales, le plus simple est de définir une macro AutoKeys avec des actions comme « Arrêt Macro » (notamment pour les touches {F1}, {F2}). Pour les séquences plus complexes, il faudra regarder du côté de l’événement KeyPress des formulaires (avec la propriété « Aperçu des touches » du formulaire réglée sur Oui).

    Par contre, je ne sais pas si c’est une bonne idée de tout désactiver : F2, notamment, sert à modifier le contenu d’un champ…

  4. DIEUDONNE dit :

    Salut, comment faire pour désactiver les touches
    Alt+F4 , F1 , F2 etc …

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *