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] ADO & DAO --> Compréhension Recordset ... Probl


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de snoopy69
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    737
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 737
    Par défaut [VBA] ADO & DAO --> Compréhension Recordset ... Probl
    Bonjour à tous j'avais déjà posté sur ce même sujet mais j'ai une autre question c'est pour cela que je refais un nouveau poste ...

    Voici le code que j'ai fait :

    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    Sub historique()
    Dim db As DAO.Database
    Dim rst As DAO.Recordset
     
    'Ouverture de la table
    Set db = CurrentDb()
    Set rst_h = db.OpenRecordset("TB_HISTORIQUE")
    Set rst_m = db.OpenRecordset("TB_MOUVEMENTS")
    Set rst_d = db.OpenRecordset("TB_DESTINATIONS")
     
    'Ajouter un enregistrement
    rst_h.AddNew
    rst_m.AddNew
    rst_d.AddNew
     
        rst_h("TB_HISTORIQUE.date_du_jour_historique") = ("TB_MOUVEMENTS.date_du_jour")
        rst_h("TB_HISTORIQUE.numero_mouvement_historique") = ("TB_MOUVEMENTS.numero_mouvement")
        rst_h("TB_HISTORIQUE.masse_historique") = ("TB_MOUVEMENTS.masse")
        rst_h("TB_HISTORIQUE.nombre_piece_historique") = ("TB_MOUVEMENTS.nombre_piece")
        rst_h("TB_HISTORIQUE.fk_of_historique") = ("TB_MOUVEMENTS.fk_of")
        rst_h("TB_HISTORIQUE.fk_lingot_historique") = ("TB_MOUVEMENTS.fk_lingot")
        rst_h("TB_HISTORIQUE.fk_description_historique") = ("TB_MOUVEMENTS.fk_description")
        rst_h("TB_HISTORIQUE.fk_departement_provenance_historique") = ("TB_MOUVEMENTS.fk_departement_provenance")
        rst_h("TB_HISTORIQUE.fk_alliage_historique") = ("TB_MOUVEMENTS.fk_alliage")
        rst_h("TB_HISTORIQUE.fk_visa_historique") = ("TB_MOUVEMENTS.fk_visa")
        rst_h("TB_HISTORIQUE.fk_type_historique") = ("TB_MOUVEMENTS.fk_type")
        rst_h("TB_HISTORIQUE.fk_departement_destination_historique") = ("TB_DESTINATIONS.fk_departement_destination")
        rst_h("TB_HISTORIQUE.fk_mouvement_historique") = ("TB_DESTINATIONS.fk_mouvement")
        rst_h("TB_HISTORIQUE.controle_masse_historique") = ("TB_DESTINATIONS.controle_masse")
        rst_h("TB_HISTORIQUE.controle_piece_historique") = ("TB_DESTINATIONS.controle_piece")
     
    'Mise à jour
    rst_h.Update
    rst_m.Update
    rst_d.Update
     
    'Libération des objets
    rst_h.Close
    rst_m.Close
    rst_d.Close
    Set rst_h = Nothing
    Set rst_m = Nothing
    Set rst_d = Nothing
    Set db = Nothing
     
    'Information de réussite pour l'utilisateur
    MsgBox "La copie à bien été réalisée"
     
    End Sub
    Avec ce code mon but c'est de copier certain contenu de table pour les stoquer dans une table nommée TB_HISTORIQUE ...

    En fait c'est pour faire de la sauvegarde de donnée que je cherche à faire cela ...

    le problème que j'ai c'est que le code que j'ai ci-dessus ne fonctionne malheureusement pas ... pourtant, traduis en français, cela marche ... je ne comprends pas pourquoi ... voici mon erreur :

    Erreur d'éxécution '3265'
    Elément non trouvé dans cette collection
    En cliquand sur DEBOGAGE, voici on le curseur se position et me colore la ligne en jaune :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     rst_h("TB_HISTORIQUE.date_du_jour_historique") = ("TB_MOUVEMENTS.date_du_jour")
    SAvez vous d'où peut venir le problème ???

    Merci de vos réponses ... ... ...

  2. #2
    Membre confirmé

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 193
    Par défaut
    Bonjour !

    A mon avis, c'est un petit pb de syntaxe

    Tu as ca :
    rst_h("TB_HISTORIQUE.date_du_jour_historique")
    essaye
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    rst_h![date_du_jour_historique]

  3. #3
    Membre éclairé Avatar de snoopy69
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    737
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 737
    Par défaut
    Bonjour ... merci pour ta réponse ... mais cela ne fonctionne pas ... ....

    Mais j'ai trouvé une autre solution ...

    J'ai fait une requête type : INSERT INTO TB... ... ...

    et je vais l'appeler en VBA ... c'est le plus simple je crois ....

    Mais merci pour ton aide ...

    A tout bientôt ...

    Snoop'

  4. #4
    Membre chevronné
    Avatar de Petogaz
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    479
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 479
    Par défaut
    salut,

    dans ton code il y a des choses impréhensible. tu ouvres un recordset sur TB_MOUVEMENTS mais tu ne l'utilises pas.
    au lieu de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rst_h("TB_HISTORIQUE.date_du_jour_historique") = ("TB_MOUVEMENTS.date_du_jour")
    essais plutot :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    rst_h("TB_HISTORIQUE.date_du_jour_historique") = rst_m("TB_MOUVEMENTS.date_du_jour")
    et idem pour le reste du code.

  5. #5
    Membre éclairé Avatar de snoopy69
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    737
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2004
    Messages : 737
    Par défaut
    A ouais j'avais pas pensé à cela mais j'ai ENFIN réussi à faire ce que je voulais avec une requête ...

    Donc c'est gentil de ta réponse mais cela marche ...

    Merci ...

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

Discussions similaires

  1. [VBA DAO] Ajouter un recordset à un autre recordset
    Par ceuce dans le forum Requêtes et SQL.
    Réponses: 14
    Dernier message: 09/05/2007, 08h07
  2. [VBA DAO] methode sur recordset
    Par ip203 dans le forum VBA Access
    Réponses: 3
    Dernier message: 04/04/2007, 12h20
  3. [VBA] Utilisation de DAO.recordset
    Par kissmytoe dans le forum Access
    Réponses: 2
    Dernier message: 14/03/2006, 08h54
  4. [Excel vba + ADO(X)] afficher BDD dans listbox
    Par Emcy dans le forum Access
    Réponses: 4
    Dernier message: 13/12/2005, 12h46
  5. [vba + ADO] lire BDD
    Par Emcy dans le forum Autres SGBD
    Réponses: 4
    Dernier message: 30/11/2005, 14h41

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