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

IHM Discussion :

Enregistrer des données de mon formulaire dans une table lorsque une case est cochée


Sujet :

IHM

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 31
    Points : 26
    Points
    26
    Par défaut Enregistrer des données de mon formulaire dans une table lorsque une case est cochée
    Bonjour,

    J'ai un formulaire d'une dizaine de champs à saisir qui alimente une table. J'aimerai ajouter une case à cocher qui me permettrai d'enregistrer deux des dix champs de mon formulaire dans une autre table.
    Et lorsque je décoche la case, je supprimerai les deux champs enregistré de ma table.

    Je débute en Access et je ne trouve pas de moyen de réaliser ceci.

    Merci.

  2. #2
    Membre expérimenté Avatar de Gado2600
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Mai 2013
    Messages
    903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Office VBA

    Informations forums :
    Inscription : Mai 2013
    Messages : 903
    Points : 1 364
    Points
    1 364
    Par défaut
    Bonsoir,
    Pour réaliser votre projet, il vous faudrait placer une procédure événementielle sur votre case à cocher.
    Cette procédure serait de type AfterUpdate et le développement en VBA.

    Votre algorithme se déroulerait ainsi pour la suite :
    Si CaseACocher = True Alors
    Enregistrer les données
    Sinon
    Effacer les données
    Fin Si

    Pour ce qui est de l'enregistrement, soit vous passez par le SQL, soit par le Recordset.

    Avec le recordset, vous devrez user des fonctions Edit (sans oublier le Update) pour l'enregistrement.
    Pour le cas où vous effacez les données, vous n'aurez qu'à faire un enregistrement vide, comme par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rec.Fields("NomChamp").Value = ""
    Vérifiez juste que vous avez le droit de mettre vos champs à Null.

    Bon courage

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    Bonsoir,

    Merci de votre aide, je dois vous avouer que je n'ai pas de connaissance en VBA, mais sans efforts on arrive à rien. Je vais essayer de m'appuyer sur ce que vous m'avez proposé, et voir ce que j'arrive, ou pas, à faire.

    Merci.

  4. #4
    Membre expérimenté Avatar de Gado2600
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Mai 2013
    Messages
    903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Office VBA

    Informations forums :
    Inscription : Mai 2013
    Messages : 903
    Points : 1 364
    Points
    1 364
    Par défaut
    Bonsoir,
    Normalement, dans mon précédent post, vous avez tous les mots clés nécessaires à la réalisation.
    Si vous ne vous en sortez pas, montrez ce que vous avez fait sur ce topic et on vous aidera.

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Juin 2013
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2013
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    Bonjour,

    Après avoir essayé de comprendre le VBA et sa syntaxe, je n'arrive toujours pas à réaliser ce que je veux faire.

    Voici mon code ( j'ai un peu honte de le montrer)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private Sub Cocher20_AfterUpdate()
    If [Cocher20 = True] Then
    requeteSQL:Insert into [Noria LRU] (SN, PN,Nom Noria) Select (SN,PN,[Nom LRU]) From LRU where ""
    Else ()
     
     
    End Sub

  6. #6
    Membre expérimenté Avatar de Gado2600
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Mai 2013
    Messages
    903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Office VBA

    Informations forums :
    Inscription : Mai 2013
    Messages : 903
    Points : 1 364
    Points
    1 364
    Par défaut
    Bonjour,
    Corriger déjà comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Sub Cocher20_AfterUpdate()
    Dim SQL as String
    If Me.Cocher20.Value = True Then
    SQL = "Insert into [Noria LRU] (SN, PN,Nom Noria) Select (SN,PN,[Nom LRU]) From LRU where """
    'Commande pour lancer SQL
    Else ()
     
     
    End Sub

  7. #7
    Rédacteur/Modérateur
    Avatar de loufab
    Homme Profil pro
    Entrepreneur en solutions informatiques viables et fonctionnelles.
    Inscrit en
    Avril 2005
    Messages
    12 015
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Entrepreneur en solutions informatiques viables et fonctionnelles.
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 12 015
    Points : 24 548
    Points
    24 548
    Par défaut
    Bonjour,

    Gado2600, si tu recopies ma réponse avec des erreurs dans 10 ans on vous retrouvera encore en train d'échanger sur ce sujet !

    Voici le code :
    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
    Private Sub Cocher20_AfterUpdate()
    Dim SQL as String
     
    'If Me.Cocher20.Value = True Then 'pourquoi ajouter = true ? 
     
    If me.cocher20 then
    'Ici par contre on a un problème, la condition Where ne va pas s'écrire seule ?!!! à moins de vouloir insérer l'ensemble de LRU dans [Noria LRU] il va bien falloir choisir un enregistrement distinct !!
        SQL = "Insert into [Noria LRU] (SN, PN,Nom Noria) Select (SN,PN,[Nom LRU]) From LRU where """
     
    'C'est bien de déclarer une requête dans une variable, mais elle ne va pas s'exécuter seule !!!
    currentdb.execute Sql
     
    'Else () cette syntaxe n'existe pas !!!
    Endif 'ça par contre c'est obligatoire !!
     
    End Sub
    Cordialement,

Discussions similaires

  1. [WD18] Metre une colonne d'une Table sur une ligne d'une autre Table
    Par Totophe2 dans le forum WinDev
    Réponses: 2
    Dernier message: 22/11/2013, 12h58
  2. Réponses: 1
    Dernier message: 19/10/2011, 12h13
  3. [AC-2003] Enregistrement des données d'un formulaire dans deux tables en VBA Access
    Par jarodCameleon dans le forum VBA Access
    Réponses: 10
    Dernier message: 23/06/2010, 23h01
  4. Copier les enregistrements d'une table vers une table d'une autre DB
    Par karinette21 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 18/11/2008, 21h50
  5. Enregistrement des données d'un formulaire dans SharePoint
    Par fanfan49 dans le forum SharePoint
    Réponses: 1
    Dernier message: 06/06/2007, 23h12

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