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 :

Problème requête ajout/select en VBA [AC-2013]


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    emploi
    Inscrit en
    Mars 2014
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : emploi

    Informations forums :
    Inscription : Mars 2014
    Messages : 138
    Par défaut Problème requête ajout/select en VBA
    Bonjour à tous,


    Je cherche à switcher des devis en factures.
    Une aide m'avait été donnée quelques temps au préalable mais aujourd'hui j'ai pas mal modifié mon appli et je rencontre des problèmes pour adapter l'aide qui m'avait été donnée... J'ai pas mal cherché, essayé, je n'arrive à rien.

    Voici mon code qui me permet via un bouton de transférer mes informations devis vers factures:
    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
    Private Sub BtnCreerFacture_Click()
    Dim strSQL As String
    Dim NumFact As Long
    Dim rstsform As DAO.Recordset
    'Rajouter dans la table facture le numéro de client et de devis.
    strSQL = "INSERT INTO T_Factures ( ID_Devis_FK_Fact, ID_Client ) SELECT " & Me.ID_Devis & "," & Me.ID_Client & ";"
    DoCmd.RunSQL strSQL ' Exécuter la requête
    'Récupérer le numéro de la facture
    NumFact = DMax("[ID_Facture]", "[T_Factures]")
    'Parcourir le sous-formulaire
    Set rstsform = Me.SF_Devis_Details.Form.RecordsetClone
    With rstsform
        .MoveFirst
        While Not .EOF
        'Insérer les détails du devis dans la facture NumFact
        strSQL = "INSERT INTO T_Factures_Details " _
                & "( ID_Facture, ID_Prod_FK_Fact, Designation, Quantite, Prix_Unitaire," _
                & "Remise, TVA )" _
                & " SELECT " & NumFact & "," & rstsform![ID_Prod_FK_Devis] & ",'" & rstsform![Designation] & "'," _
                & Replace(rstsform![Quantite], ",", ".") & "," & Replace(rstsform![Prix_Unitaire], ",", ".") & "," _
                & Replace(rstsform![Remise], ",", ".") & "," & Replace(rstsform![TVA], ",", ".") & ";"
    'Debug.Print strSQL
        DoCmd.RunSQL strSQL
        .MoveNext
        Wend
    End With
    Set rstsform = Nothing
    'Ouvrir le formulaire de facturation sur le client
    DoCmd.OpenForm "F_Clients_Factures", , , "[ID_Client] =" & Me.ID_Client
    Lorsque je clique sur mon bouton l'erreur est: "erreur de compilation: Membre de méthode ou de donnée introuvable" .ID_Devis est surligné en bleu dans le code à sa première apparition...
    Je ne comprends pas pourquoi...
    Voici également un screen de mes relations (donc on peut également voir le nom de mes champs...).
    Nom : Sans titre.png
Affichages : 165
Taille : 107,3 Ko

    Merci d'avance à celui qui me sortira de la.
    A bientôt.

  2. #2
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 80
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Par défaut
    Bonjour,

    Membre de méthode ou de donnée introuvable" .ID_Devis est surligné en bleu dans le code à sa première apparition...
    C'est donc que le formulaire dans lequel se trouve le bouton BtnCreerFacture ne contient pas de contrôle qui porte le nom ID_Devis.

    Vérifie l'orthographe du nom du contrôle auquel tu veux te référer.

  3. #3
    Membre confirmé
    Femme Profil pro
    emploi
    Inscrit en
    Mars 2014
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : emploi

    Informations forums :
    Inscription : Mars 2014
    Messages : 138
    Par défaut
    Bonjour Claude merci pour ta réponse.

    J'avais effectivement déduit que le contrôle ID_Devis devait être faux et pourtant dans mon formulaire, j'ai bien un ID_Devis (qui contient la valeur ID_Devis; mon contôle et le nom de mon contrôle ont le même nom).
    Il semblerait que l'erreur soit hélas pour moi plus subtile que ça

  4. #4
    Rédacteur/Modérateur

    Avatar de ClaudeLELOUP
    Homme Profil pro
    Chercheur de loisirs (ayant trouvé tous les jours !)
    Inscrit en
    Novembre 2006
    Messages
    20 596
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 80
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de loisirs (ayant trouvé tous les jours !)
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20 596
    Par défaut
    D'ici, pas d'idée.

    Un échantillon de ta BdD en Access2000 ?

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2009
    Messages
    114
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 114
    Par défaut
    bonjour

    il ne faudrait pas plutôt utiliser Me!ID_Devis ?

  6. #6
    Membre confirmé
    Femme Profil pro
    emploi
    Inscrit en
    Mars 2014
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : emploi

    Informations forums :
    Inscription : Mars 2014
    Messages : 138
    Par défaut
    Bonjour à vous deux.


    Pour la conversion en version 2000 ça ca être dur dur pour moi, travaillant avec AC2013, je fais l'effort d'utiliser les fonctionnalités avancées (qui sont pour certaines clairement et uniquement des simplifications de ce qu'on pouvait déjà faire avec les autres versions, mais que je ne saurais justement pas mettre en place avec les anciennes versions).
    Si je ne trouve aucune solution, je regarderais pour pouvoir reproduire les éléments nécessaire en version 2000.

    Concernant le Me!, à ma connaissance, cela revient à Me. sauf qu'il est plus restrictif .Dans le doute j'ai essayé, mais cela ne change rien.

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

Discussions similaires

  1. Problème Requête SQL SELECT
    Par Burton's91 dans le forum Débuter
    Réponses: 2
    Dernier message: 16/06/2012, 19h18
  2. Problème requête ajout
    Par doudou666 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 14/07/2007, 19h25
  3. Problème requète trop selective
    Par mouatte dans le forum Requêtes
    Réponses: 4
    Dernier message: 20/11/2006, 17h52
  4. requête de selection sur VBA?
    Par jessy212 dans le forum Requêtes et SQL.
    Réponses: 11
    Dernier message: 28/08/2006, 10h58
  5. Ouvrire requête de selection en VBA ..
    Par snoopy69 dans le forum Access
    Réponses: 2
    Dernier message: 17/10/2005, 15h55

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