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 :

Acces à un champ dans un recordset base sur une requete multitable


Sujet :

VBA Access

  1. #1
    Futur Membre du Club
    Inscrit en
    Mars 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Acces à un champ dans un recordset base sur une requete multitable
    Bonjour

    Je ne suis pas le roi du vba ni d'Access et ai besoin de votre aide. Une requête sur deux tables fonctionne correctement mais je suis incapable de récupérer les champs de la seconde table. Je dois probablement me planter sur la désignation du champ appro.Ref_appro
    Pourriez-vous m'aider ?


    Private Sub Bessai_Click()
    Dim Srequete As String
    Dim RSligne As Recordset: Dim DBbase As Database
    Dim Sref_quantite As String: Dim Sref_appro As String

    Set DBbase = Application.CurrentDb

    ' Requete multitables
    Srequete = "SELECT detail_fiche_production.*, detail_fiche_production.id_fiche_production, appro.Ref_appro FROM appro INNER JOIN detail_fiche_production ON appro.id_appro = detail_fiche_production.id_appro "
    Srequete = Srequete & " WHERE (((detail_fiche_production.id_fiche_production)=14))"

    'creation du recordset
    Set RSligne = DBbase.OpenRecordset(Srequete, dbOpenDynaset)
    RSligne.MoveFirst
    ' parcours ligne/ligne
    Do
    Sref_quantite = RSligne.Fields("detail_fiche_production.id_fiche_production").Value 'marche
    Sref_appro = RSligne.Fields("appro.Ref_appro").Value ' plante erreur 3265 Element non trouve dans cette collection

    RSligne.MoveNext
    Loop Until RSligne.EOF

    'on ferme
    RSligne.Close
    DBbase.Close
    Set RSligne = Nothing

    End Sub

    Au passage si qun peut m'expliquer comment insérer du code proprement dans les posts. Je vois tout le monde le faire. Merci

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 736
    Points : 14 758
    Points
    14 758
    Par défaut
    bonsoir,
    la raison est simple : si le champ en question n'est pas à la fois dans les 2 tables (comme id_fiche_production), il est inutile de préfixer avec le nom de la table, d'ailleurs, il suffit d'afficher la requête en mode feuille de données pour voir si SQL préfixe ou pas les champs en doublons
    le code correct est donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Sref_appro = RSligne.Fields("Ref_appro")
    Au passage si qun peut m'expliquer comment insérer du code proprement dans les posts. Je vois tout le monde le faire. Merci
    une des icônes (qui ne sont pas là pour faire joli) du menu message, plus exactement, la dernière de la seconde ligne: #
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #3
    Futur Membre du Club
    Inscrit en
    Mars 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Et en plus ça marche !!!
    Un grand merci

  4. #4
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 736
    Points : 14 758
    Points
    14 758
    Par défaut
    de rien,
    maintenant, tu peux revenir sur ton premier post et mettre en pratique la mise en forme du code avec l'icône magique.
    Ensuite tu pourras mettre la discussion en à l'aide du bouton en bas
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

Discussions similaires

  1. Réponses: 7
    Dernier message: 22/03/2016, 13h50
  2. [AC-2003] Formulaire de saisie basée sur une requete
    Par Kallamou dans le forum IHM
    Réponses: 1
    Dernier message: 20/11/2009, 13h58
  3. Réponses: 2
    Dernier message: 15/07/2008, 09h00
  4. Réponses: 0
    Dernier message: 31/07/2007, 05h47
  5. Réponses: 4
    Dernier message: 11/05/2006, 16h23

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