Ci-joint la proc=E9dure qui normalement sert =E0 inhiber la=20
touche "Shift", mais je n'arrive pas (malgr=E9 les bonnes=20
=E2mes de ce forum)=E0 l'int=E9grer dans une autre base :
-----------------------------------------------------------
Option Compare Database
Option Explicit
-----------------------------------------------------------
Sub D=E9sactiverMaj()
Dim blnAutoriserMaj As Boolean
' Si blnAutoriserMaj vaut False, la touche [Maj] sera=20
d=E9sactiv=E9e.
' Si blnAutoriserMaj vaut True, la touche [Maj] sera=20
activ=E9e.
blnAutoriserMaj =3D False
=20
ModifiePropr "AllowBypassKey", dbBoolean,=20
blnAutoriserMaj
If blnAutoriserMaj Then
MsgBox "La touche [Maj] est activ=E9e. Fermez la=20
base et r=E9ouvrez-la pour tester."
Else
MsgBox "La touche [Maj] est d=E9sactiv=E9e. Fermez la=20
base et r=E9ouvrez-la pour tester."
End If
End Sub
-----------------------------------------------------------
Function ModifiePropr(chNomPropri=E9t=E9 As String,=20
varTypeProp As Variant, varValeurProp As Variant) As=20
Integer
Dim bds As Database, prp As Property
Const conErreurPropNonTrouv=E9e =3D 3270
Set bds =3D CurrentDb
On Error GoTo Change_Err
bds.Properties(chNomPropri=E9t=E9) =3D varValeurProp
ModifiePropr =3D True
Change_Sortie:
Exit Function
Change_Err:
If Err =3D conErreurPropNonTrouv=E9e Then ' Propri=E9t=E9=20
non trouv=E9e.
Set prp =3D bds.CreateProperty(chNomPropri=E9t=E9,=20
varTypeProp, varValeurProp)
bds.Properties.Append prp
Resume Next
Else
' Erreur inconnue.
ModifiePropr =3D False
Resume Change_Sortie
End If
End Function
-----------------------------------------------------------
Voici mon 1er pb : lorsque je la transf=E8re dans une autre=20
base, il y a une erreur de compil (dbBoolean en bleu - Sub=20
D=E9sactiverMaj() en jaune avec un message "variable non=20
d=E9finie"), alors que dans la base d'origine tout=20
fonctionne correctement.
Le 2i=E8me pb : associer la proc=E9dure =E0 une macro. Je sais=20
qu'il faut utiliser la fonction "Ex=E9cuterCode", mais o=F9=20
est le nom de la fonction ????? J'ai beau essayer=20
d=E9sactiverMaj() ou le nom du module (AllowBypassKey)mais=20
rien n'y fait.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Raymond
Bonjour.
je vien de transférer ton code sous 2000, il n'y a aucun problème, tout fonctionne. vérifie tes lignes.
en macro sur executercode, en bas tu indiques le nom de la fonction et tu peux cliquer sur le bouton (...) générateur pour rechercher la fonction. Mais attention, il faut que ta fonction soit Public et qu'elle se trouve dans un module standard. -- @+ Raymond Access MVP. http://access.seneque.free.fr/ http://users.skynet.be/mpfa/charte.htm pour une meilleure efficacité de tes interventions sur MPFA.
"Stéphane" a écrit dans le message de news:01b201c36e65$6738e500$ Bonjour,
Voici mon 1er pb : lorsque je la transfère dans une autre base, il y a une erreur de compil (dbBoolean en bleu - Sub DésactiverMaj() en jaune avec un message "variable non définie"), alors que dans la base d'origine tout fonctionne correctement.
Le 2ième pb : associer la procédure à une macro. Je sais qu'il faut utiliser la fonction "ExécuterCode", mais où est le nom de la fonction ????? J'ai beau essayer désactiverMaj() ou le nom du module (AllowBypassKey)mais rien n'y fait.
Merci de bien vouloir m'aider car "patauge".
Bonjour.
je vien de transférer ton code sous 2000, il n'y a aucun problème, tout
fonctionne. vérifie tes lignes.
en macro sur executercode, en bas tu indiques le nom de la fonction et tu
peux cliquer sur le bouton (...) générateur pour rechercher la fonction.
Mais attention, il faut que ta fonction soit Public et qu'elle se trouve
dans un module standard.
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Stéphane" <stephane.laube@cp.finances.gouv.fr> a écrit dans le message de
news:01b201c36e65$6738e500$a501280a@phx.gbl...
Bonjour,
Voici mon 1er pb : lorsque je la transfère dans une autre
base, il y a une erreur de compil (dbBoolean en bleu - Sub
DésactiverMaj() en jaune avec un message "variable non
définie"), alors que dans la base d'origine tout
fonctionne correctement.
Le 2ième pb : associer la procédure à une macro. Je sais
qu'il faut utiliser la fonction "ExécuterCode", mais où
est le nom de la fonction ????? J'ai beau essayer
désactiverMaj() ou le nom du module (AllowBypassKey)mais
rien n'y fait.
je vien de transférer ton code sous 2000, il n'y a aucun problème, tout fonctionne. vérifie tes lignes.
en macro sur executercode, en bas tu indiques le nom de la fonction et tu peux cliquer sur le bouton (...) générateur pour rechercher la fonction. Mais attention, il faut que ta fonction soit Public et qu'elle se trouve dans un module standard. -- @+ Raymond Access MVP. http://access.seneque.free.fr/ http://users.skynet.be/mpfa/charte.htm pour une meilleure efficacité de tes interventions sur MPFA.
"Stéphane" a écrit dans le message de news:01b201c36e65$6738e500$ Bonjour,
Voici mon 1er pb : lorsque je la transfère dans une autre base, il y a une erreur de compil (dbBoolean en bleu - Sub DésactiverMaj() en jaune avec un message "variable non définie"), alors que dans la base d'origine tout fonctionne correctement.
Le 2ième pb : associer la procédure à une macro. Je sais qu'il faut utiliser la fonction "ExécuterCode", mais où est le nom de la fonction ????? J'ai beau essayer désactiverMaj() ou le nom du module (AllowBypassKey)mais rien n'y fait.