Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access
Access Forum d'entraide sur Microsoft Access. Avant de poster -> La F.A.Q Access
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 14/04/2011, 15h32   #1
Membre régulier
 
Inscription : mai 2004
Messages : 337
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 337
Points : 90
Points : 90
Par défaut Bloquer la modificatin des formulaire et du code

Bonjour,

Je développe avec Access 2003 sous Windows XP Pro.

Je souhaiterais interdire la modification des formulaires et interdire la modification du code.
Entre autre, verrouiller l'option "Création de formulaire" du menu contextuel.
Par contre je souhaiterais conserver les options "Filtre, tri, .. " du menu contextuel.

J'ai pensé au mode MDE, mais ce dernier bloque l'option "filtre".

Ci-joint, les paramètres de démarrage :


Si quelqu'un à une idée, merci d'avance

Willy
Images attachées
Type de fichier : jpg Ec_Param_Dem_R.jpg (39,6 Ko, 7 affichages)
willytito est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/04/2011, 18h31   #2
Rédacteur/Modérateur

 
Avatar de loufab
 
Homme Fabrice CONSTANS
Ingénieur développement logiciels
Inscription : avril 2005
Messages : 7 085
Détails du profil
Informations personnelles :
Nom : Homme Fabrice CONSTANS
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur développement logiciels

Informations forums :
Inscription : avril 2005
Messages : 7 085
Points : 11 623
Points : 11 623
Bonjour,
Avec la version 2003 il y a encore la sécurité utilisateur : lire et bien comprendre le tuto sur la sécurité. http://loufab.developpez.com/tutoriels/access/securite/

Attention : faire des sauvegardes avant de commencer.

Tu peux la placer sur les formulaires et états. Et compléter par un mot de passe sur VBA.

Cordialement,
__________________
Classe MELA(CRUD) Opérateur IN et zone de liste
MsGraph et VBA - 1e Partie 2e partie
Entête d'états-Opérateur LIKE-Evénements formulaires-Cours 2010
Complément :Générateur de msgbox
Visitez mon Blog
Les questions techniques par MP ne sont pas lues et je ne pratique pas l'extispicine
loufab est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/04/2011, 07h57   #3
Membre Expert
 
Avatar de zoom61
 
Homme Vincent ...
Passionné d'informatique
Inscription : janvier 2005
Messages : 1 217
Détails du profil
Informations personnelles :
Nom : Homme Vincent ...
Âge : 39
Localisation : France, Haute Vienne (Limousin)

Informations professionnelles :
Activité : Passionné d'informatique
Secteur : Industrie

Informations forums :
Inscription : janvier 2005
Messages : 1 217
Points : 1 506
Points : 1 506
Envoyer un message via Yahoo à zoom61 Envoyer un message via Skype™ à zoom61
Pour ma part, je procède de cette façon, je crée un module qui contient les fonctions suivantes :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Function SetBypassProperty()
Const DB_Boolean As Long = 1
    ChangeProperty "AllowBypassKey", DB_Boolean, False
End Function
 
Function UnSetBypassProperty()
Const DB_Boolean As Long = 1
    ChangeProperty "AllowBypassKey", DB_Boolean, True
End Function
 
Function ChangeProperty(strPropName As String, varPropType As Long, varPropValue As Variant) As Integer
    Dim dbs As database, prp As Variant
    Const conPropNotFoundError = 3270
    Set dbs = CurrentDb
    On Error GoTo Change_Err
    dbs.Properties(strPropName) = varPropValue
Change_Bye:
    Exit Function
Change_Err:
    If err = conPropNotFoundError Then    ' Propriété non trouvée.
    Set prp = dbs.CreateProperty(strPropName, _
    varPropType, varPropValue)
    dbs.Properties.Append prp
    Resume Next
Else
  ' --Erreur inconnue.
  Resume Change_Bye
End If
End Function
Ensuite sur un formulaire qui se lance au démarrage, je saisie au chargement du formulaire les commandes suivantes :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Private Sub Form_Load()
    SetBypassProperty
    Dim Valeur As Variant
    DoCmd.ShowToolbar "menu bar", acToolbarNo
    DoCmd.ShowToolbar "Form View", acToolbarNo
    DoCmd.ShowToolbar "Web", acToolbarNo
    DoCmd.ShowToolbar "Formatting (Form/Report)", acToolbarNo
    DoCmd.ShowToolbar "Print Preview", acToolbarNo
    DoCmd.ShowToolbar "Toolbox", acToolbarNo
    If SysCmd(acSysCmdAccessVer) >= "12.0" Then
        DoCmd.ShowToolbar "Ribbon", acToolbarNo
        DoCmd.RunCommand acCmdWindowHide
    End If
    DoCmd.ShowToolbar "Nom de la barre d'outils que je veux faire apparaître", acToolbarYes
    DoCmd.Maximize
End Sub
Et sur ce formulaire je n'oublie pas de rajouter la commande suivante sur un texte, un champ, une image...
Code :
1
2
3
Private Sub Étiquette_DblClick(Cancel As Integer)
    UnSetBypassProperty
End Sub
Il faut une première fois ouvrir l'application, ce qui permettra d'activer la fonction "SetBypassProperty" et qui aura pour effet de neutraliser la fonction SHIFT au démarrage. Pour la rendre à nouveau active, il faudra lancer la commande contenant la fonction "UnSetBypassProperty".

@+.
__________________
N'oubliez pas le Tag :

C'est en parvenant à nos fins par l'effort, en étant prêt à faire le sacrifice de profits immédiats en faveur du bien-être d'autrui à long terme, que nous parviendrons au bonheur caractérisé par la paix et le contentement authentique. [Dalaï Lama]
Je ne réponds pas aux messages privés s'ils sont liés à une question du forum

Mon site sur Developpez.com
zoom61 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/04/2011, 13h48   #4
Membre régulier
 
Inscription : mai 2004
Messages : 337
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 337
Points : 90
Points : 90
Par défaut Résolu

Bonjour,

J'ai résolu mon problème en visitant ce lien : http://starec.developpez.com/tuto/barrecommande/

Pour désactiver le menu contextuel : création formulaire, il suffit d'utiliser le code suivant :

Code :
Application.CommandBars(88).Enabled = False
Willy
willytito est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h13.


 
 
 
 
Partenaires

Hébergement Web