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

VBA Access Discussion :

Sous formulaire limiter enregistrement


Sujet :

VBA Access

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    423
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 423
    Points : 155
    Points
    155
    Par défaut Sous formulaire limiter enregistrement
    Bonjour à tous,

    J'utilise Access 2003
    J'ai 2 tables (Table_1 et Table_2)
    La relation entre ces 2 tables est : 1 à plusieurs

    Sur mon formulaire j'ai les données de Talbe_1
    Et sur le sous-formulaire, j'ai les données de Table_2
    Un champ commun (Père-Fils) fait le lien ente ces 2 formulaires

    ça fonctionne, mais je voudrais limiter le nombre d'enregistrement du sous-formulaire à 1.
    Pour ce faire, j'ai masqué les boutons de déplacement, mais on peut toujours rajouter un 2nd enregistrement en utilisant la molette de la souris ou les touches (Page up et page down) du clavier

    Si quelqu'un a une idée !

    Je vous remercie
    Willy

  2. #2
    Membre à l'essai
    Inscrit en
    Avril 2007
    Messages
    70
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations forums :
    Inscription : Avril 2007
    Messages : 70
    Points : 24
    Points
    24
    Par défaut
    Salut willytito,

    Ta juste à aller dans ton formulaire, propriétés de ce que tu veux bloquer/évènement/sur touche appuyée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub enregistrement_à_bloquer_KeyDown(KeyCode As Integer, Shift As Integer)
    KeyCode = 0
    End Sub
    et ça doit être dans le même style pour le click souris (prorpiétés/évènement/click souris)

  3. #3
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Bonjour,

    mais je voudrais limiter le nombre d'enregistrement du sous-formulaire à 1.
    Ceci est une simple question... Tu es sûr de la conception de ta base ?

    Si tu n'as qu'un seul enregistrement lié dans ta 2ème table, pourquoi ne pas inclure les champs dans la table principale ?

    Nb de champs supérieur à 255 ?

    Domi2

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    423
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 423
    Points : 155
    Points
    155
    Par défaut Précision
    C'est vrai !
    Mais, j'ai fais ma conception en vu d'une future évolution
    Willy

  5. #5
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Re,

    tu peux essayer ceci sur la propriété avant mise à jour.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub Form_BeforeInsert(Cancel As Integer)
     
        'Teste le nombre d'enregistrement
        If Me.CurrentRecord > 1 Then
     
            Msgbox....
     
            Cancel = True
     
        End If
     
    End Sub
    Domi2

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2007
    Messages : 74
    Points : 88
    Points
    88
    Par défaut
    Le problème de la molette qui passe à l'enregistrement suivant vient du fait que si ton sous-formulaire permet l'ajout d'enregistrements, l'action de la molette prépare un nouvel enregistrement vide.
    Pour éviter cela il suffit d'interdire l'ajout d'enregistrements dans ton sous formulaire. (dans les propriétés DATA du sous-formulaire)

Discussions similaires

  1. Réponses: 4
    Dernier message: 13/09/2009, 05h52
  2. Sous formulaire et enregistrement
    Par Dieu091 dans le forum IHM
    Réponses: 3
    Dernier message: 22/05/2007, 14h38
  3. Sous-formulaire sans enregistrement..
    Par Invité dans le forum IHM
    Réponses: 3
    Dernier message: 04/09/2006, 13h45
  4. Réponses: 6
    Dernier message: 17/07/2006, 21h23
  5. sous-formulaire et enregistrement suivant
    Par Cantalou dans le forum Access
    Réponses: 3
    Dernier message: 12/10/2005, 18h05

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