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

VB 6 et antérieur Discussion :

DB sur plusieurs feuilles


Sujet :

VB 6 et antérieur

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 8
    Points : 3
    Points
    3
    Par défaut DB sur plusieurs feuilles
    Bonjour.

    Voici mon problème, j'ai créer une BD qui regroupe les informations de deux feuilles. Les informations sont indexées en fonction du champs "Nom" qui se situe sur la première feuille. J'arrive sans problème à sauver les informations de la première feuille, mais pas moyen d'enregistrer correctement les informations de la deuxième feuille, celle-ci ne s'indexe pas et s'enregistre toujours sur le premier index.

    Voici ce que j'ai mis pour enregistrer ma DB

    feuille 1

    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
    Private Sub cmdPro_Click()
     
    'Enregistrement des données personnelles
     
    If Trim(txtNom.Text) <> "" Then
       ' la méthode Update permet d'enregistrer immédiatement les modifications
            adoPersonnelle.Recordset.Update
     Else
        ' la méthode CancelUpdate annule toute modification avant qu'elle ne soit enregistrée
       adoPersonnelle.Recordset.CancelUpdate
    End If
     
    'Petmet de charger une autre feuille en mémoire
    Load frmProfessionelle
    'afficher l'autre feuille : méthode nom de la feuille.show
    frmProfessionelle.Show
     
    'commande qui permet de décharger une feuille (la page de démarrage)
    frmPersonnelle.Hide
    End Sub
    feuille 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
    Private Sub cmdEnregistrer_Click()
     
    'Enregistrement des données professionelles
     
    If Trim(txtSociete.Text) <> "" Then
       ' la méthode Update permet d'enregistrer immédiatement les modifications
        adoPersonnelle.Recordset.Update
     Else
        ' la méthode CancelUpdate annule toute modification avant qu'elle ne soit enregistrée
       adoPersonnelle.Recordset.CancelUpdate
    End If
     
    Unload frmPersonnelle
    Unload frmProfessionelle
     
     
    End
     
    End Sub
    Merci pour votre aide

  2. #2
    Modérateur
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 077
    Points : 17 185
    Points
    17 185
    Par défaut
    Ou et quand est déclaré, initialisé adoPersonnelle
    celle-ci ne s'indexe pas et s'enregistre toujours sur le premier index
    ne te manquerait il pas un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    adoPersonnelle.Recordset.AddNew
    Si non pourquoi ne pas enregistrer la totalité des infos dans la feuille 2.
    Soyez sympa, pensez -y
    Balises[CODE]...[/CODE]
    Balises[CODE=NomDuLangage]...[/CODE] quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Balises[C]...[/C] code intégré dans une phrase.
    Balises[C=NomDuLangage]...[/C] code intégré dans une phrase quand vous mettez du code d'un autre langage que celui du forum ou vous postez.
    Le bouton en fin de discussion, quand vous avez obtenu l'aide attendue.
    ......... et pourquoi pas, pour remercier, un pour celui/ceux qui vous ont dépannés.
    👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    la commande addNews est utiliser sur une autre feuille, une feuille Gestion

    Private Sub cmdAjout_Click()

    'permet d'encoder les valeurs avant d'être sauver dansla base de données
    frmPersonnelle.adoPersonnelle.Recordset.AddNew

    'Choix d'un item lors de l'ajout
    ' Choix d'un item lors de l'ajout
    frmPersonnelle.lstFinalite.ListIndex = 0

    ' Choix d'un item lors de l'ajout
    frmPersonnelle.cboPromo.ListIndex = 69

    ' Choix d'un item lors de l'ajout
    frmPersonnelle.cboPays.ListIndex = 0

    'Petmet de charger une autre feuille en mémoire
    Load frmPersonnelle
    'afficher l'autre feuille : méthode nom de la feuille.show
    frmPersonnelle.Show

    'commande qui permet de décharger une feuille (la page de démarrage)
    Unload frmGestion

    Pour ce qui est de tout enregistrer en même temps sur la feuille deux, j'ai déjà essayer. Quand je le fait, il n'enregistre pas les données de la feuille 1 et j'ai le même problème pour la feuille 2 ( il enregistre toujours sur le premier index)

    Qu'est ce que tu entend par initialiser/déclaré la base de donnée ?

    Merci pour ton aide

  4. #4
    Membre éclairé
    Inscrit en
    Décembre 2007
    Messages
    512
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 512
    Points : 671
    Points
    671
    Par défaut
    Bonjour,

    de aiglonos

    Qu'est ce que tu entend par initialiser/déclaré la base de donnée ?
    de ProgElect

    Ou et quand est déclaré, initialisé adoPersonnelle
    Je suppose que ProgElect veut dire ...quelque chose comme (voir ci-dessous)
    et qu'il parle de la Table et non de la BD

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
      With adoPersonnelle
          ![champ1] = Trim(txtSociete.Text)
          ![champ2] = ...
          ![champ3] = ...
         ...
      End With
    A+

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    j'ai créé une table acces via VB6.

    Ensuite j'ai utiliser l'outil ado controle 6.0

    Et puis j'ai lié via cet outil les champs de la table d'acces avec les zones texte de ma feuille

  6. #6
    Membre éclairé
    Inscrit en
    Décembre 2007
    Messages
    512
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 512
    Points : 671
    Points
    671
    Par défaut
    Et pourquoi au lieu d'utiliser deux feuilles ne faire qu'une seule feuille
    en utilisant deux Frames ce qui simplifieraient ton appli

    Frame1 'pour les informations personnelles avec les textbox ou listbox dans la frame
    Frame2 ' pour les informations professionnelles et idem

    et un bouton page suivante qui inverse les frames
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Frame1.visible = True
    Frame2.visible = False
     
    'et inversément
     
    Frame1.visible = False
    Frame2.visible = True
    A+

  7. #7
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Oui bonne idée c'est ce que je vais faire si je ne trouve pas d'autre solution.

    Mais j'aurais bien aimé comprendre où était le problème dans mon application.

  8. #8
    Membre éclairé
    Inscrit en
    Décembre 2007
    Messages
    512
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 512
    Points : 671
    Points
    671
    Par défaut
    Peut-être, mais je n'en suis pas certain,
    que le contrôle ado ne peut être lié qu'avec une seule feuille?

  9. #9
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    j'ai déjà lu plusieurs tutoriels et consulté des aides, je ne vois nul part les restrictions. Donc je ne sais pas, là est le problème ^^

  10. #10
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2009
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Je viens de refaire mon projet en utilisant une feuille avec deux frames et là ca marche.

    J'ai juste un soucis au niveau des combobox. Quand j'enregistre, elle s'enregistre bien dans la DB la première fois, mais dès que j'enregistre une nouvelle entrée, les anciennes données sauvés au niveau des combobox disparaissent de la BD

    Est ce quelqu'un sait d'où pourrait venir le problème alors que pour les listbox je n'ai aucun problème

Discussions similaires

  1. Execution de code sur plusieurs feuilles
    Par anisr dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 29/12/2006, 11h12
  2. Access export vers Excel sur plusieurs feuilles
    Par oceanediana dans le forum Access
    Réponses: 6
    Dernier message: 10/07/2006, 12h15
  3. macro sur plusieurs feuilles
    Par lolo_bob2 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 19/06/2006, 16h51
  4. excel VBA comment recopier sur plusieurs feuilles
    Par floflo2006 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 26/11/2005, 15h56
  5. [excel] même code sur plusieurs feuilles
    Par sabotage dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 16/11/2005, 12h23

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