|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre régulier
![]() Inscription : mai 2006 Messages : 164 ![]() |
Je m'efforce de mettre en oeuvre la procédure décrite par Loufab dans la FAQ mais je n'y arrive pas. J'ai une BDA avec un formulaire d'accueil , j'aimerais savoir si je dois placer cette procédure sur l'onglet événement du formulaire et sur quel événement ou bien dois-je créé une macro associée à un module. J'ai essayé les 2 mais je n'obtiens aucun résultat . D'autre part, si je veux désactiver, je dois utiliser tout ou partie de la procédure décrite et lorsque je veux réactiver, qu'est ce qu'il y a lieu de faire.Merci à, quiconque de m'éclairer.
|
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 098 ![]() |
Bonjour,
De quel article de la FAQ parle-tu ?
__________________
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 |
|
00
|
|
|
#3 |
|
Membre régulier
![]() Inscription : mai 2006 Messages : 164 ![]() |
Tout d'abord merci de me répondre. En fait, il s'agit de l'article : inhiber la touche MAJ dans la partie "administrer une base de données et rédiger par FRANCK. Je m'excuse pour m'être trompé d'auteur, mais je venais de terminer une lecture de LOUFAB.
Merci d'éclairer ma lanterne car je suis dans le brouillard. Jacques-Henri |
|
|
00
|
|
|
#4 |
|
Nouveau Membre du Club
![]() Étudiant Inscription : mars 2007 Messages : 66 ![]() |
celui sur lequel le dois aussi être
![]() http://access.developpez.com/faq/?page=TAAdmin#inhiber j'ai le même souci, j'y arrive pas... |
|
|
00
|
|
|
#5 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 098 ![]() |
Bonjour,
Le réglage de AllowBypassKey est valide jusqu'à un nouveau réglage quelque soit le nombre de sessions (ouverture) de la base. Donc il n'est pas nécessaire de mettre ce code en démarrage systèmatique.
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 |
|
00
|
|
|
#6 |
|
Membre régulier
![]() Inscription : mai 2006 Messages : 164 ![]() |
OK , cela j'ai bien compris mais où cette fonction de désactivation (et forcément d'activation) doit elle être programmée alors, il s'agit dans ce cas d'une action pour tout access? Ce que je veux , c'est qu'en ouvrant ma propre BDA que j'ai fabriquée je n'autorise pas l'usage de la fonction SHIFT.Ceci afin d'obliger l'utilisateur d'introduire son mot de passe à partir du fo motpasse qui je considère comme fo d'accueil.
Merci Loufab. |
|
|
00
|
|
|
#7 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 098 ![]() |
Cette action n'est valable que pour la base courante et on a besoin de l'exécuter qu'une seule fois (paramètre On/Off).
Donc si tu exécute le SetBypassProperty la propriété est fixée une fois pour toute. Jusqu'à que tu l'annule par un UnSetBypassProperty. On peut imaginer que suivant le Password rentré il est accès ou non a un bouton (ou case à cocher) pour le Set ou UnSet.
__________________
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 |
|
00
|
|
|
#8 | |
|
Membre régulier
![]() Inscription : mai 2006 Messages : 164 ![]() |
Citation:
Merci pour l'aide |
|
|
|
00
|
|
|
#9 |
|
Expert Confirmé Sénior
![]() Pierre GONZALEZDéveloppeur Office VBA Inscription : août 2005 Messages : 3 412 ![]() |
Bonsoir.
Si tu veux condamner définitivement l'action de la touche Shift à l'ouverture, tu copies le code proposé dans un module de la base. Tu fais ensuite une copie de ta base, c'est celle que tu vas mettre à disposition. Tu l'ouvres, tu exécutes SetByPassProperty. Si tu veux un .mde tu compiles à ce moment. Et tu refermes. Ta base est prête : la touche shift est inactive. Tu gardes pour toi la base initiale sur laquelle la touche shift est toujours active à l'ouverture. Bon courage, PGZ
__________________
pluritas non est ponenda sine necessitate - Le rasoir d'Okham Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon |
|
|
00
|
|
|
#10 | ||
|
Membre régulier
![]() Inscription : mai 2006 Messages : 164 ![]() |
Merci pour ta réponse, mais j'ai déjà essayé,ça n'a pas marché.
Voici comment j'ai procédé (je m'y suis peut-être mal pris). j'ai crée un module puis une macro qui exécute le code intégralement copié sur ouverture du fo d'acceuil.Ce code le voici (il se trouve dans la FAQ "inhiber touche MAJ"): auteur : Frank Il est intéressant des fois d'inhiber l'effet de la touche MAJ (Ne pas exécuter les évènement de chargement de la base) pour ne pas afficher le conteneur de la base à l'utilisateur. Pour cela on dispose de deux procédures, l'une qui l'inhibe SetBypassProperty, l'autre qui l'active UnSetBypassProperty. Code :
|
||
|
|
00
|
|
|
#11 |
|
Expert Confirmé Sénior
![]() Pierre GONZALEZDéveloppeur Office VBA Inscription : août 2005 Messages : 3 412 ![]() |
Bonjour.
Comme je te le disais hier, si tu as créé le module contenant le code en question, l'étape suivante est de faire une copie de la base. Tu auras alors : - MaBase - MaBase_copie. Pour la suite : tu déploies un fichier .mdb ou .mde? A+ PGZ
__________________
pluritas non est ponenda sine necessitate - Le rasoir d'Okham Ne jamais attribuer à la malignité ce que la stupidité peut expliquer -Le rasoir d'Hanlon |
|
|
00
|
|
|
#12 | ||
|
Nouveau Membre du Club
![]() Étudiant Inscription : mars 2007 Messages : 66 ![]() |
![]() En fait, c'est assez simple: tu crées dans l'évènement "sur ouverture" de ton formulaire principal le code suivant: Code :
(bien sur, en supposant que tu puisse avoir un mode super-admin qui te permette d'éditer ta base...) |
||
|
|
00
|
|
|
#13 |
|
Membre régulier
![]() Inscription : mai 2006 Messages : 164 ![]() |
Bien je vais essayer la version proposée par oceliane ce sera plus simple pour moi et je vous tiens rapidement au courant.Je croise les doigts.
A +++++ |
|
|
00
|
|
|
#14 | ||
|
Membre régulier
![]() Inscription : mai 2006 Messages : 164 ![]() |
Bonsoir,
Désolé oceliane mais ta proposition ne fonctionne pas. J'ai donc fait une autre recherche sur le forum et je suis tombé sur les commentaires de "ashurai " dans VBA access :access 2003 macro autoexec et ça fonctionne.Il faut créer un module et une macro autoexec dont le code est le suivant : Code :
Merci |
||
|
|
00
|
|
|
#15 | |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 098 ![]() |
Bonjour,
Citation:
Il y a une règle de fonctionnement que j'ai donné sous forme de liste. Donc je me répète ! 1 - Le code exécuté à chaque ouverture ne sert à rien. C'est d'une logique désarmante ! 2 - Les Bypass étant de type ON/OFF il faut bien un déclencheur pour le faire passer d'un état à l'autre. On peut utiliser plusieurs moyens (bouton protégé avec password, ligne de commande avec paramètres...) 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 |
|
|
00
|
|
|
#16 |
|
Membre régulier
![]() Inscription : mai 2006 Messages : 164 ![]() |
Bonjour Loufab,
Je m'excuse mais je suis perdu . Tu me mets précédemment Allowbypasskey à true (pr désactiver Shift) or j'ai vu sur le site que c'était pluôt false. Mais ce n'est pas à proprement la question essentielle. Ce que j'ai fait ,si je me comprends bien, c'est le code actif pour ma base pour toutes les ouvertures, donc fixé une fois pour toutes , selon tes explications ici plus haut. Et en fait je voulais savoir pourquoi la suppression de la macro et du module ne changeait rien. Et en dernier ressort il me faut donc tout simplement changer true par false ou l'inverse mais à l'aide d'un déclencheur comme tu dis. C'est bien ça. Merci Loufab |
|
|
00
|
|
|
#17 |
![]() ![]() ![]() Fabrice CONSTANSIngénieur développement logiciels Inscription : avril 2005 Messages : 7 098 ![]() |
L'interception du shift se fait au moment du démarrage, lorsque le code s'exécute celle-ci a déjà eu lieu. Donc le code ne sert à rien pour la session courante, il n'aura d'éffet qu'au prochain démarrage de l'appli.
__________________
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 |
|
00
|
Copyright © 2000-2012 - www.developpez.com