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 :

Comment supprimer un enregistrement dans un sous-formulaire grâce à un bouton sur la ligne


Sujet :

VBA Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    Gérant
    Inscrit en
    Janvier 2013
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Gérant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2013
    Messages : 21
    Points : 23
    Points
    23
    Par défaut Comment supprimer un enregistrement dans un sous-formulaire grâce à un bouton sur la ligne
    Bonjour à tous,

    j'aimerai supprimer un enregistrement dans un sous-formulaire grâce à un bouton qui se situe sur la ligne.
    Mais si je ne sélectionne pas la bonne ligne avant de cliquer sur le bouton cela me supprime la ligne sélectionnée.
    En fait en cliquant sur le bouton il me faudrait sélectionner un champ de l'enregistrement mais je ne sais pas quel code utiliser.
    Quelqu’un à t'il une idée.

    voici mon sous-formulaire
    Nom : SF_TELEPHONE_TIERS.jpg
Affichages : 1812
Taille : 51,2 Ko

    Merci d'avance de votre aide

  2. #2
    Membre du Club
    Femme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Novembre 2014
    Messages
    44
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 51
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Transports

    Informations forums :
    Inscription : Novembre 2014
    Messages : 44
    Points : 53
    Points
    53
    Par défaut
    Bonjour,

    Cette méthode n'est pas très pratique, car un bouton n'est pas dépendant d'une source de données, il ne peut pas "récupérer" les informations liées à l'enregistrement actif.
    Un bouton a le même nom pour tous les enregistrements et n'a pas de valeur. Même s'il apparait plusieurs fois sur le formulaire, c'est le même qui est dupliqué.

    La méthode habituelle consiste plutôt à sélectionner la ligne à effacer et à cliquer sur un seul et même bouton pour supprimer l'enregistrement actif.

    Une autre méthode (comme dans certains logiciels de messagerie) consiste à créer une case à cocher (valable pour chaque ligne du sous-formulaire), plus un bouton pour la suppression (d'un ou plusieurs enregistrements d'ailleurs).
    La case à cocher peut être liée à un enregistrement en particulier. Il est possible
    -soit de l'intégrer dans la requête source du formulaire, en créant un nouveau champ par exemple,
    -soit de créer une nouvelle requête avec 2 champs : un des champs (identifiant par exemple) de la requête source et la valeur de la case à cocher. Il suffira ensuite de parcourir le jeu d'enregistrements (recordset) pour savoir quels enregistrements doivent être effacer.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Gérant
    Inscrit en
    Janvier 2013
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Gérant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2013
    Messages : 21
    Points : 23
    Points
    23
    Par défaut
    Bonjour metalleuse,

    bon dans ces conditions effectivement je pense changer mon fusil d'épaule.
    je ne pensais pas que le bouton était en fait le même dans toutes les occurrences.
    c'est dommage je trouvais ma solution assez sympa et fonctionnelle.

    Merci pour ton aide.

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonsoir Yakov,

    Ce que tu me dis m'étonnes un peu parce que j'utilise ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    'Supprimer l'enregistrement en cours
    Private Sub BnSupprimer_Click()
    DoCmd.SetWarnings False
    Me.AllowDeletions = True
    DoCmd.RunCommand acCmdDeleteRecord
    Me.AllowDeletions = False
    DoCmd.SetWarnings True
    End Sub
    dans le bouton d'un sous-formulaire et je n'ai jamais le souci de devoir sélectionner l'enregistrement.

    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  5. #5
    Membre à l'essai
    Homme Profil pro
    Gérant
    Inscrit en
    Janvier 2013
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Gérant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2013
    Messages : 21
    Points : 23
    Points
    23
    Par défaut
    bonsoir madefemere,

    et bien j'ai essayé ton code et ça me fait exactement la même chose.
    si c'est la ligne 1 qui est sélectionnée et que je clique sur mon bouton "-" de la ligne 1 c'est la ligne 1 qui est supprimée.

    bien à toi

  6. #6
    Membre à l'essai
    Homme Profil pro
    Gérant
    Inscrit en
    Janvier 2013
    Messages
    21
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Gérant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2013
    Messages : 21
    Points : 23
    Points
    23
    Par défaut
    bonsoir à tous,

    et bien j'ai réussi à mettre un bouton qui supprime bien mon enregistrement mais en passant par l'assistant de création de bouton.
    Ce qui m'a créer une macro.

    bien à tous et merci pour l'aide car cela m'a obligé à regarder ailleurs et à trouver la solution.

    Bien à tous

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

Discussions similaires

  1. [AC-2007] Supprimer un enregistrement dans un sous-formulaire
    Par eemii dans le forum IHM
    Réponses: 1
    Dernier message: 14/01/2011, 17h37
  2. Réponses: 3
    Dernier message: 03/07/2010, 07h17
  3. [AC-2003] Comment trouver l'enregistrement dans des sous Formulaires
    Par Lululu dans le forum IHM
    Réponses: 4
    Dernier message: 08/09/2009, 10h14
  4. Réponses: 1
    Dernier message: 16/04/2008, 06h42
  5. Réponses: 2
    Dernier message: 22/09/2007, 19h38

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