J'ai réalisé sur ma base de données Access, des formulaires de modification et de consultation de données. J'ai donc voulu verrouiller la base de données pour qu'une personne lambda ne puisse pas modifier certaines données. J'ai donc tout d'abord enlever via les options le volet de navigation et désactiver les menus complets et contextuels comme expliqué sur cette page :
https://www.bonbache.fr/application-access-avec-un-ecran-d-accueil-489.html
Sauf que comme expliqué, via la touche maj on peut quand même accéder à la modification du formulaire, ce que je ne souhaite pas. J'ai donc repris la même présentation avec un formulaire "Administration-gestion de la base de données" :
https://www.bonbache.fr/verrouiller-ou-deverrouiller-une-base-de-donnees-491.html
Donc je suis les informations expliquées et à la fin, quand je clique une première fois sur le bouton "Désactiver la touche MAJ", il me remet sur la page VB et me met le message d'erreur suivant : "Erreur de compilation : argument non facultatif" concernant la partie du code suivante : "Private Sub desactiver_maj_Click()" (en jaune).
J'ai cherché sur le net, mais je n'ai rien trouvé. Quelqu'un pourrait m'aider ?
Je vous remercie de votre attention.
Cordialement
PS : voici ma ligne de code VB si ça peut aider :
Option Compare Database
Private Sub activer_maj_Click()
touche_maj 'AllowBypassKey', True
MsgBox 'La touche Maj a été activée'
End Sub
Private Sub desactiver_maj_Click()
touche_maj 'AllowBypassKey', False
MsgBox 'La touche Maj a été désactivée'
End Sub
Private Sub touche_maj(nom_prop As String, valeur_prop As Boolean)
Dim base As Database
Set base = Application.CurrentDb
base.Properties(nom_prop) = valeur_prop
J'ai modifier les guillemets et je tombe sur une autre erreur. La suivante : "Propriété non trouvée" et il me surligne cette partie de mon code : "base.Properties(nom_prop) = valeur_prop"