IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Access 2000/2003 désactiver la touche MAJ


Sujet :

Access

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 9
    Points : 5
    Points
    5
    Par défaut Access 2000/2003 désactiver la touche MAJ
    Bonjour

    J'ai déjà essayé ces deux solutions:
    1)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CurrentProject.Properties.Add "AllowBypassKey", False
    2)
    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
    Sub SetBypassProperty()
    Const DB_Boolean As Long = 1
        ChangeProperty "AllowBypassKey", DB_Boolean, False
    End Sub
    Sub UnSetBypassProperty()
    Const DB_Boolean As Long = 1
        ChangeProperty "AllowBypassKey", DB_Boolean, True
    End Sub
     
    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
    Les deux méthodes ne fonctionnent pas
    Dans la deuxième, le code VB:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    dim dbs as database 
    set dbs = CurrentDb
    set prp = dbs.CreateProperty(strPropName, _
        varPropType, varPropValue)
    n' est plus reconnu par ma version d'access ( ok en access 97)
    Quelqu'un pourrait-il me dépanner?
    Merci d'avance

    Ps: aller décocher l'option dans tools-startup-Use Access Special Keys ne fonctionne pas non plus

  2. #2
    Membre du Club
    Inscrit en
    Décembre 2006
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 79
    Points : 44
    Points
    44
    Par défaut
    Bonjour,
    si ça peux aider, j'utilise cette methode
    dans un Module:
    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
     
    Option Compare Database
     
    Sub SetBypassProperty()
    Const DB_Boolean As Long = 1
        ChangeProperty "AllowBypassKey", DB_Boolean, False
    End Sub
    Sub UnSetBypassProperty()
    Const DB_Boolean As Long = 1
        ChangeProperty "AllowBypassKey", DB_Boolean, True
    End Sub
     
    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
    puis sur un Form j'ai 2 boutons: verrouillage:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub vermaj_Click()
    DoCmd.OpenModule "Module1", "SetBypassProperty"
    End Sub
    et déverrouillage:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Sub devermaj_Click()
    DoCmd.OpenModule "Module1", "UnSetBypassProperty"
    End Sub
    ça vaut ce que ça vaut mais ça fonctionne

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Salut
    Merci pour ta réponse mais avec ma version d'access, comme je l'ai dit plus haut, certaines propriétés comme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    dim db as database
    ne fonctionnent plus et le debuger apparaît.
    J'utilisais cette routine parfaitement en access 97 mais avec l'access de windows xp (2002, je pense?) cela ne fonctionne plus.
    Idem pour l'ouverture et la manipulation des tables en VB mais pour cela j'ai trouvé comment faire.

  4. #4
    Membre du Club
    Inscrit en
    Décembre 2006
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 79
    Points : 44
    Points
    44
    Par défaut
    j'utilise la suite Office Pro 2003 et donc Access 2003.

    pas de messages privés SVP

  5. #5
    Invité
    Invité(e)
    Par défaut
    Bonjour

    As-tu activé la référence DAO 3.6 ? Ou 3.5 pour 97

    Starec

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2005
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Salut

    J'ai trouvé: il fallait référencer la bibliothèque d'objets Microsoft DAO 3.6.
    Alors le code VB devient

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Dim db as DA0.Database
    à la place de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Dim db as Database
    qui ne fonctionne pas

    Didier


    PS merci pour Starec c'était la bonne raison...

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Bonjour,

    Je suis pas un pro en vb, loin de la !!
    J'ai essayé votre methode et des que je clique sur le bouton pour desactiver la touche maj , j'ai la fenetre de VB qui se lance et qui m'affiche le code !!

    Vous sauriez pas d'ou ca vient, c'est certainement pas grand chose.

    Merci

  8. #8
    Membre éclairé
    Inscrit en
    Décembre 2006
    Messages
    893
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 893
    Points : 833
    Points
    833
    Par défaut Et les API ?
    C'est plutôt dans le forum VB qu'il faut chercher.

    De mémoire, il y a une fonction du type *CAPSNUM" qui gère les touches. Dans quelle DLL ?

    A activer dans la bonne procédure.

  9. #9
    Candidat au Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par ESVBA
    C'est plutôt dans le forum VB qu'il faut chercher.

    De mémoire, il y a une fonction du type *CAPSNUM" qui gère les touches. Dans quelle DLL ?

    A activer dans la bonne procédure.
    Merci, mais je ne pense pas que cela vienne de vb, c'est plutot lier au module ci-dessus.
    En effet chez moi la commande Openmodule, ouvre la fenetre VB mais ne l'execute pas !
    Je comprend pas

  10. #10
    Membre éclairé
    Inscrit en
    Décembre 2006
    Messages
    893
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 893
    Points : 833
    Points
    833
    Par défaut API donne un acces direct
    Comment activer le Num(ou Caps) lock à chaque lancement d' Excel?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Declare Function SetKeyboardState Lib "User32" _
    (kbArray As Byte) As Long
     
    Private Declare Function GetKeyboardState Lib "User32" _
    (lpKeyState As Byte) As Long
     
    Sub TestLock()
        Dim KeyState(0 To 255) As Byte
        GetKeyboardState KeyState(0)
        KeyState(&H90) = 1 'Num Lock
       'KeyState(&H14) = 1 'Caps Lock
       SetKeyboardState KeyState(0)
    End Sub
    Glané je ne sais plus où...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 18/07/2006, 10h57
  2. Conversion ACCESS 2000 > 2003
    Par anikeh dans le forum Access
    Réponses: 7
    Dernier message: 30/05/2006, 10h53
  3. [Access 2000 - 2003] Runtime
    Par 973thom dans le forum Runtime
    Réponses: 1
    Dernier message: 03/04/2006, 10h45
  4. Désactiver la touche MAJ au démarrage
    Par crapouye dans le forum Access
    Réponses: 6
    Dernier message: 06/12/2005, 13h49
  5. Réponses: 1
    Dernier message: 14/11/2005, 16h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo