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 :

[VB]requête ajout


Sujet :

VB 6 et antérieur

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 10
    Points
    10
    Par défaut [VB]requête ajout
    Bonjour à Tous!

    J'essaye de créer une requête ajout en VB afin de pouvoir executer une boucle sur cette requête.

    J'ai crée la requête que je souhaite via le mode création d'Access et j'ai copié le SQL pour l'adapter à mon besoin... Mais je dois avoir un problème de syntaxe...

    quelqu'un peut-il m'aider? Ci-dessous mes lignes de codes...

    Merci par avance

    OS

    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
    Function Leaders()
     
    Dim bd As DAO.Database
    Set bd = CurrentDb
    Dim Leaders As QueryDef
    Dim Effectifs As DAO.Recordset
    Dim Sv As String
    Dim chSQL1 As String
     
    Set Effectifs = bd.OpenRecordset("EFFECTIFS")
     
    DoCmd.SetWarnings False
     
    Effectifs.MoveFirst
    Do Until Effectifs.EOF
     
    Sv = Effectifs![csv]
     
    chSQL1 = "INSERT INTO [CA 2005 - 01 - " & Sv & "] ( [REF CA] ) _
    SELECT [REFERENTIEL LOCAL]![Etablissement de rattachement] & [REFERENTIEL PRODUITS]![Codification] AS [REF CA] _
    FROM ([CA 2005 - 2006] INNER JOIN [REFERENTIEL PRODUITS] ON ([CA 2005 - 2006].[Code Gamme Cabestan]=[REFERENTIEL PRODUITS].[CODE GAMME CABESTAN]) AND ([CA 2005 - 2006].[Code Famille Cabestan]=[REFERENTIEL PRODUITS].[CODE FAMILLE CABESTAN]) AND ([CA 2005 - 2006].[Code Produit/Service Cabestan]=[REFERENTIEL PRODUITS].[CODE PRODUIT/SERVICE CABESTAN])) INNER JOIN [REFERENTIEL LOCAL] ON [CA 2005 - 2006].[Coclico]=[REFERENTIEL LOCAL].[N° Coclico] _
    GROUP BY [REFERENTIEL LOCAL]![Etablissement de rattachement] & [REFERENTIEL PRODUITS]![Codification], [REFERENTIEL LOCAL].[Secteur Vendeur / Position] _
    HAVING ((([REFERENTIEL LOCAL].[Secteur Vendeur / Position])= sv ));"
     
    Set Leaders = bd.CreateQueryDef("MAJ LEADERS", chSQL1)
     
    Leaders.Execute
     
    End Function
    [Balises de code rajoutées par Thierry AIM, Merci d'y penser la prochaine fois]

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 46
    Points : 55
    Points
    55
    Par défaut
    D'après ce que je vois :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HAVING ((([REFERENTIEL LOCAL].[Secteur Vendeur / Position])= sv ));"
    Dans ce cas ta variable sv est dans les "" il faut l'en sortir :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    HAVING ((([REFERENTIEL LOCAL].[Secteur Vendeur / Position])='" & sv & "'));"
    ça doit être à peu près ça ! Mais à mon avis tu vas avoir un problème car Sv est un string alors que tu veux un réél ou un entier !

    Enfin bon...

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 10
    Points
    10
    Par défaut
    Merci...

    Je vais essayer cela... C'est bien une variable de type string dont j'ai besoi car SV est une chaine de caractères.

    J'essaye

    encore merci,

    OS

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 10
    Points
    10
    Par défaut
    Après modif : j'ai tjs un msg Attendu : Fin d'instruction...


    Une autre idée?

    OS

  5. #5
    Expert éminent
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Points : 8 524
    Points
    8 524
    Par défaut
    verifie tes ( et ), a mon avis, ou il en manque ou il y en a de trop

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 46
    Points : 55
    Points
    55
    Par défaut
    A mon avis là :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "INSERT INTO [CA 2005 - 01 - " & Sv & "]
    il te faut aussi des ' :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "INSERT INTO [CA 2005 - 01 - '" & Sv & "']
    PS : j'ai regardé les () à priori c'est bon mais une bonne vérification s'impose quand même !

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 10
    Points
    10
    Par défaut
    Tjs le même pb...

    J'ai vérifié les ( aussi...

    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
     
     
    Function Leaders()
     
    Dim bd As DAO.Database
    Set bd = CurrentDb
    Dim Leaders As QueryDef
    Dim Effectifs As DAO.Recordset
    Dim Sv As String
    Dim chSQL1 As String
     
    Set Effectifs = bd.OpenRecordset("EFFECTIFS")
     
    DoCmd.SetWarnings False
     
    Effectifs.MoveFirst
    Do Until Effectifs.EOF
     
    Sv = Effectifs![csv]
     
    chSQL1 = "INSERT INTO [CA 2005 - 01 - '" & Sv & "'] ( [REF CA] ) _
    SELECT [REFERENTIEL LOCAL]![Etablissement de rattachement] & [REFERENTIEL PRODUITS]![Codification] AS [REF CA] _
    FROM ([CA 2005 - 2006] INNER JOIN [REFERENTIEL PRODUITS] ON ([CA 2005 - 2006].[Code Gamme Cabestan]=[REFERENTIEL PRODUITS].[CODE GAMME CABESTAN]) AND ([CA 2005 - 2006].[Code Famille Cabestan]=[REFERENTIEL PRODUITS].[CODE FAMILLE CABESTAN]) AND ([CA 2005 - 2006].[Code Produit/Service Cabestan]=[REFERENTIEL PRODUITS].[CODE PRODUIT/SERVICE CABESTAN])) INNER JOIN [REFERENTIEL LOCAL] ON [CA 2005 - 2006].[Coclico]=[REFERENTIEL LOCAL].[N° Coclico] _
    GROUP BY [REFERENTIEL LOCAL]![Etablissement de rattachement] & [REFERENTIEL PRODUITS]![Codification], [REFERENTIEL LOCAL].[Secteur Vendeur / Position] _
    HAVING ((([REFERENTIEL LOCAL].[Secteur Vendeur / Position])='"& sv & "'));"
     
    Set Leaders = bd.CreateQueryDef("MAJ LEADERS", chSQL1)
     
    Leaders.Execute
     
    End Function
    J'en suis là... est-ce que le pb peut êtr autre que la syntaxe?

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 46
    Points : 55
    Points
    55
    Par défaut
    c'est tes "_" qui mettent le bordel (mal placé, ou autre).
    essaye comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    chSQL1 = "INSERT INTO [CA 2005 - 01 - '" & Sv & "'] ( [REF CA] ) "
    chSQL1 = chSQL1 & "SELECT [REFERENTIEL LOCAL]![Etablissement de rattachement] & [REFERENTIEL PRODUITS]![Codification] AS [REF CA] "
    chSQL1 = chSQL1 & "FROM ([CA 2005 - 2006] INNER JOIN [REFERENTIEL PRODUITS] ON ([CA 2005 - 2006].[Code Gamme Cabestan]=[REFERENTIEL PRODUITS].[CODE GAMME CABESTAN]) AND ([CA 2005 - 2006].[Code Famille Cabestan]=[REFERENTIEL PRODUITS].[CODE FAMILLE CABESTAN]) AND ([CA 2005 - 2006].[Code Produit/Service Cabestan]=[REFERENTIEL PRODUITS].[CODE PRODUIT/SERVICE CABESTAN])) INNER JOIN [REFERENTIEL LOCAL] ON [CA 2005 - 2006].[Coclico]=[REFERENTIEL LOCAL].[N° Coclico] "
    chSQL1 = chSQL1 & "GROUP BY [REFERENTIEL LOCAL]![Etablissement de rattachement] & [REFERENTIEL PRODUITS]![Codification], [REFERENTIEL LOCAL].[Secteur Vendeur / Position] "
    chSQL1 = chSQL1 & "HAVING ((([REFERENTIEL LOCAL].[Secteur Vendeur / Position])='" & Sv & "'));"

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2006
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Février 2006
    Messages : 14
    Points : 10
    Points
    10
    Par défaut RESOLU
    Déjà il ne me refuse plus les instructions...Gros progrès...

    Merci beaucoup! je vais enfin pouvoir avancer!!!

    Bonne journée

    OS

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 46
    Points : 55
    Points
    55
    Par défaut
    N'oubli pas "Résolu" si ça marche

Discussions similaires

  1. requête ajout
    Par v.aroutcheff dans le forum Access
    Réponses: 2
    Dernier message: 19/02/2006, 11h20
  2. Problème avec requête ajout
    Par mitnick32 dans le forum Access
    Réponses: 1
    Dernier message: 02/02/2006, 18h02
  3. [requête ajout]violation de clés
    Par Elro6475 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 01/02/2006, 12h37
  4. Réponses: 15
    Dernier message: 27/11/2005, 16h37
  5. requête Ajout
    Par lious dans le forum Langage SQL
    Réponses: 7
    Dernier message: 19/08/2004, 11h05

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