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 :

[VBA] Ajout de plusieurs enrgt dans une table


Sujet :

VBA Access

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 84
    Par défaut [VBA] Ajout de plusieurs enrgt dans une table
    Bonjour

    Je me retrouve devant un souci, que je sais à peu près comment régler mais pas du tout comment m'y prendre, je m'explique :

    J'ai une base avec deux tables :
    - T_SWITCH (N° Switch, Modèle, S/N, Adresse IP, Nombre de ports...)
    - T_PORT (N° Switch, Port, Prise) => ici les deux premiers champs sont des clés primaires afin d'en faire un champ unique.

    Je veux créer un formulaire de création d'un nouveau switch (qui a soit 24 soit 48 ports), j'arrive à le créer dans ma table T_SWITCH mais j'ai un souci avec la table T_PORT.

    En fait, lorsque j'enregistre, le programme doit me rajouter tous les ports du switch crée, c'est à dire, si le switch à 24 ports, on doit avoir un rajout de 24 enregistrements d'un coup (chaque port du switch dans T_PORT), sauf que je ne sais pas du tout comment m'y prendre.

    Je met le code utilisé jusque là ci-dessous, si vous pouviez me donner un coup de pouce, ce serai merveilleux !!

    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
    Private Sub Commande12_Click()
     
    Dim Ws As DAO.Workspace
    Dim Db As DAO.Database
     
    Set Ws = DBEngine.CreateWorkspace("tmp", "admin", "", dbUseJet)
    Set Db = Ws.OpenDatabase(CurrentDb.Name)
    Ws.BeginTrans
     
    StrSql = "INSERT INTO T_SWITCH ([N° Switch],[Modèle],[S / N],[Adresse IP],[Nombre de ports],[Switch Père],[Switch Fils],[LC_Type]) VALUES ('"
    StrSql = StrSql & [N° Switch].Value & "','" & [Modèle].Value & "','" & [S / N].Value & "','" & [Adresse IP].Value & "','" & [Nombre de ports].Value & "','" & [Switch Père].Value & "','" & [Switch Fils].Value & "','" & [LC_Type].Value & "');"
    MsgBox StrSql
    Db.Execute StrSql
    Ws.CommitTrans
    MsgBox "Création effectuée", vbInformation + vbOKOnly
     
    End Sub
    J'ai vu sur le Net, qu'utiliser l'instruction INSERT INTO pourrait solutionner mon souci mais je ne sais pas comment l'utiliser pour arriver à ce que je veux...

    Please Help car je suis devant une impasse...

  2. #2
    Membre Expert
    Avatar de Demco
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 396
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 396
    Par défaut
    on doit avoir un rajout de 24 enregistrements d'un coup (chaque port du switch dans T_PORT), sauf que je ne sais pas du tout comment m'y prendre.
    Peut-être quelque chose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    For i = 1 to [Nombre de ports]
     
     [...]
     Docmd.RunSQL ....
     [...]
     
    Next
    Donc tout simplement une boucle qui fait autant de requête d'insertion qu'il y a de ports.

    En espérant t'aider.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 84
    Par défaut
    Hmmm ton idée n'est pas bête du tout, je n'y avais pas penser, n'étant pas familier avec les boucles...

    Je testerai ça, voir si je peux arriver à quelque chose et je te tiens au courant

    Merci pour ta réponse si rapide en tous cas ...

  4. #4
    Membre confirmé
    Inscrit en
    Mars 2007
    Messages
    91
    Détails du profil
    Informations forums :
    Inscription : Mars 2007
    Messages : 91
    Par défaut
    Je me permet de relancer le post car j'ai le même soucis et je n'arrive pas à faire ce que je veux malgré la réponse précedente, de ton côté as-tu réussi?

  5. #5
    Membre Expert
    Avatar de Demco
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 396
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 396
    Par défaut
    Citation Envoyé par ludovicparis
    Je me permet de relancer le post car j'ai le même soucis et je n'arrive pas à faire ce que je veux malgré la réponse précedente, de ton côté as-tu réussi?
    Qu'est -ce qui ne marche pas ? Tu as un message d'erreur ?

Discussions similaires

  1. [WD15] Ajout de plusieurs enregistrements dans une table de liaison
    Par heiti dans le forum WinDev
    Réponses: 5
    Dernier message: 04/06/2010, 21h35
  2. [Toutes versions] Ajouter plusieurs lignes dans une table automatiquement
    Par bbolt dans le forum Requêtes et SQL.
    Réponses: 0
    Dernier message: 24/01/2010, 15h08
  3. Ajouter plusieurs entrées dans une table
    Par flab78 dans le forum Débuter
    Réponses: 2
    Dernier message: 25/04/2008, 15h17
  4. requêtes ajout plusieurs données dans une table
    Par COLOMBAT dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 04/04/2008, 17h27
  5. Réponses: 7
    Dernier message: 07/06/2006, 07h32

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