Bonjour,
Comment empêcher l'appui de la touche "SHIFT" lors de l'ouverture de ma base ? et ou placer cet éventuel code ?
de la même manière, comment l'autoriser pour pouvoir modifier ma base.
Merci d'avance.
Bonjour,
Comment empêcher l'appui de la touche "SHIFT" lors de l'ouverture de ma base ? et ou placer cet éventuel code ?
de la même manière, comment l'autoriser pour pouvoir modifier ma base.
Merci d'avance.
As-tu cherché dans la FAQ ?
FAQ
Ici encore
maintenant... oui
Mais je ne sais pas ou placer ce code
désolé.
Dans un module.
Je viens d'essayer dans un module et ça ne marche pas.
j'avais effectivement placé ce code dans un module...
mais lorque j'appuis sur SHIFT en cliquant sur Ouvrir
ma base s'ouvre en modification..!
Slt,
Perso, je suis moins avancé que toi,j'aimerais déjà savoir comment on fait pour verrouiller l'accès aux autres utilisateurs et ne rentrer que avec la touche SHIFT dans le mode création, etc...
Voila, merci d'avance
Salut,
Il faut l'éxécuter ce code, perso je me suis créé un bdd qui vérrouille et dévérrouille.Envoyé par DuDe92
Dans les options de démarrage :Envoyé par Gary_Stoupy
Outils démarrage.
Tu décoche les options.
Dolphy
Perso j'ai du mal a cerner le fonctionnement de ta bdd qui active et/ou désactive le SHIFT au demarrage de la bdd.Ce sont deux bases séparé ou une seule base.Il faut l'éxécuter ce code, perso je me suis créé un bdd qui vérrouille et dévérrouille.
Salut,
J'ai une Bdd avec deux boutons 'Vérrouillage' et 'Dévérrouillage', lorsque je clic sur un bouton j'ai une fenêtre d'exploration filtré sur *.mdb, je sélectionne ma base à vérrouiller (ou dévérrouiller) puis sur ok et le tour est joué.Envoyé par Sodangbe
La base en question modifiela propriété de la base sélectionné.
Dolphy
Pour ma part je fais comme Dolphy35, je me suis créé une petite appli Access, qui me permet de facilement activer ou désactiver la possiblité d'utiliser la touche Shift d'une application.
Le principe de cette petite base (une autres base Access donc) est de permettre de sélectionner la base cible (celle dont tu veux paramétrer le shift) et d'en définir l'option en VBA.
Si tu ne voies pas comment faire cette petite appli complémentaire... oublies ça.... Il te suffit :
- DE FAIRE UNE SAUVEGARDE DE TA BASE avant vérouillage
- D'ouvrir ta base en modif
- d'aller dans le vba et de changer l'option AllowBypassKey en éxécutant le code via la fenetre d'exécution.
re,
Peux-tu expliquer à un débutant néophite mais néanmoins passionné
-j'ai effectué une sauvegarde
-j'ai ouvert en modif
et...
en supposant que tu as repris le code de Franck dans la faq...
re,
Peux-tu expliquer à un débutant néophite mais néanmoins passionné
-j'ai effectué une sauvegarde
-j'ai ouvert en modif
et...
- Appuies sur Alt + F11 pour accéder au VBE
- Appuies sur Ctrl + G pour accéder à la fenetre d'éxécution
- tapes SetBypassProperty
- fermes tout
et relance ... la touche Shift ne devrait plus être opérante
ATTENTION: une fois le vérouillage effectué, tu ne pourra pas débloquer la base par ce procédé. Il te faudra alors revenir à ta dernière sauvegarde ou ... changer l'option à partir d'une autre base Access comme expliqué précédement...
Fais une sauvegarde sous un autre nom avant cette manipEnvoyé par mout1234
Dolphy
en fait ton explication était claire, j'ai trouvé
heureusement j'avais effectué une sauvegarde...
Peux-tu m'expliquer la manière de le faire à partir d'une autre base ?
Dans mon cas, la base va grossir avec l'ajout de nouveaux enregistrements.
pour l'instant tout va bien, mais si je dois la faire évoluer en modifiant certains
form (par ex.) je ne peux pas me permettre de reprendre une vieille sauvegarde.
donc ta soluce m'interresse
tu payes combien?
En clair, c'est pas bien sorcier... mais vraiment trop long à t'expliquer
Premièrement, je préfère indiquer que je ne paye pas de ma personne
secondo, je n'ai pas encore le cerveau trop liquéfié pour comprendre
maintenant si ç'a demande des heures de programmation.. tant pis
Envoyé par DuDe92
ça ne tient pas à des heures de programmation, quelques lignes. Le principe est l'adaptaion du code de franck.Envoyé par DuDe92
Dolphy
re,
Voici la function :
OuvrirUnFichier :flech: appel une fonction (voir FAQ =>http://access.developpez.com/faq/?pa...#AffBoitDialog)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55 Function ChangeProperty(strPropName As String, varPropType As Variant, varPropValue As Variant) As Integer '--------------------------------------------------------------------------------------- ' Procédure : ChangeProperty ' Auteur : Dolphy ' Commentaires : Code de Franck issu de la FAQ de developpez.com ' http://access.developpez.com/faq/?page=TAAdmin#inhiber '--------------------------------------------------------------------------------------- ' 'Fonction permettant la modification de Propriétés Dim dbs As Object, prp As Variant Dim Source As String Const conPropNotFoundError = 3270 'Appel Fonction Boîte de Dialogue Source = OuvrirUnFichier(Me.Hwnd, "Parcourir", 1, "Fichier Access", "mdb") If Source = "" Then Exit Function End If Set dbs = OpenDatabase(Source) 'Modification Propriétés On Error GoTo Gest_Err dbs.Properties(strPropName) = varPropValue ChangeProperty = True Sortie: Exit Function Gest_Err: If Err = conPropNotFoundError Then Set prp = dbs.CreateProperty(strPropName, _ varPropType, varPropValue) dbs.Properties.Append prp Resume Next Else ChangeProperty = False End If End Function
Sur le bouton vérrouillage :
Sur le bouton dévérrouillage :
Code : Sélectionner tout - Visualiser dans une fenêtre à part ChangeProperty "AllowFullMenus", 1, False
J'ai dégrossi le truc, après c'est à toi de gérer les erreurs et tout le reste.
Code : Sélectionner tout - Visualiser dans une fenêtre à part ChangeProperty "AllowBypassKey", 1, True
Dolphy
Envoyé par DuDe92
Je viens de réaliser que ta base contient les données (ce qui n'est pas recommané soit dit en passant) et donc je comprends que cela te pose problème!
Dans ce cas, tu peux - si tu ne te sens pas en mesure de créer un outil plus générique comme nous te l'avons suggéré - faire simplement une petite base dédiée à ton appli qui te permet de dévérouiller la touche shift.
Dans le même esprit que le code que te propose Dolphy mais en plus simple... car tu connais déjà le nom de la base de données à ouvrir qu'il te suffit de mettre 'en dur' (varaible sBaseName ci dessous) dans ton code.
Ca donnerait un code du genre:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Sub debloquerShift() Dim d As Database Dim sBaseName As String sBaseName = "NomDeLaBaseCible.mdb" Set d = OpenDatabase(Application.CurrentProject.Path & "\" & sBaseName) Set d.Properties("AllowByPassKey") = True d.Close End Sub
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager