Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Excel & Access.

1 réponse
Avatar
David
Bonjour.

J'ai une requete SQL qui refuse de passer .

Pourtant la meme sous access en directe passe correctement !!

Voici ma Bilan_Commande.
SELECT Commandes.id_cmd, Sum(IIf([Bilan_Acompte].[emis] Is
Null,0,[Bilan_Acompte].[emis])) AS Emis, Sum(Bilan_Acompte.Paye) AS Paye,
Sum(IIf([Bilan_Acompte].[Reste] Is Null,0,[Bilan_Acompte].[Reste])) AS
ResteaPayer, [Commandes].[MontantTTC] - [Emis] AS ResteAppeler,
resteAppeler+resteapayer AS TotalDu, IIf(([Commandes].[Facture] Is Not Null)
And totalDu<=0,0,1) AS Complet
FROM Commandes LEFT JOIN Bilan_Acompte ON Commandes.id_cmd =
Bilan_Acompte.id_Cmd
GROUP BY Commandes.id_cmd, Commandes.MontantTTC, Commandes.Facture;


Si sous access je cree une requete simple :
Select * from Bilan_Commande

J'obtient bien toutes les lignes.

Si je fais la meme chose sous excel j'ai une erreur:
Erreur d'execution -2147217887(80040e21)
Vous avez essayé d'executer une requete ne comprenant pas l'expression
specifiée 'Commande.MontantTTC - [Emis]' comme une partie de l'agregat.


Si je rajoute Commande.MontantTTC - [Emis] a la fin du group by, mes lignes
ne sont plus groupées et le status est donc Faux.

Voici le code excel qui pour moi me semble similaire a ma requete de test
sous access!

Set rs = .GetRecordset("SELECT * from Bilan_Commande;")

J'utilise ADODB.Recordset.


Merci de votre aide !

David.

1 réponse

Avatar
David
Laissez tomber.

Jet a raison.
C'est access qui a tort de repondre !!!

A+

"David" a écrit dans le message de news:
booifi$nm7$
Bonjour.

J'ai une requete SQL qui refuse de passer .

Pourtant la meme sous access en directe passe correctement !!

Voici ma Bilan_Commande.
SELECT Commandes.id_cmd, Sum(IIf([Bilan_Acompte].[emis] Is
Null,0,[Bilan_Acompte].[emis])) AS Emis, Sum(Bilan_Acompte.Paye) AS Paye,
Sum(IIf([Bilan_Acompte].[Reste] Is Null,0,[Bilan_Acompte].[Reste])) AS
ResteaPayer, [Commandes].[MontantTTC] - [Emis] AS ResteAppeler,
resteAppeler+resteapayer AS TotalDu, IIf(([Commandes].[Facture] Is Not
Null)

And totalDu<=0,0,1) AS Complet
FROM Commandes LEFT JOIN Bilan_Acompte ON Commandes.id_cmd > Bilan_Acompte.id_Cmd
GROUP BY Commandes.id_cmd, Commandes.MontantTTC, Commandes.Facture;


Si sous access je cree une requete simple :
Select * from Bilan_Commande

J'obtient bien toutes les lignes.

Si je fais la meme chose sous excel j'ai une erreur:
Erreur d'execution -2147217887(80040e21)
Vous avez essayé d'executer une requete ne comprenant pas l'expression
specifiée 'Commande.MontantTTC - [Emis]' comme une partie de l'agregat.


Si je rajoute Commande.MontantTTC - [Emis] a la fin du group by, mes
lignes

ne sont plus groupées et le status est donc Faux.

Voici le code excel qui pour moi me semble similaire a ma requete de test
sous access!

Set rs = .GetRecordset("SELECT * from Bilan_Commande;")

J'utilise ADODB.Recordset.


Merci de votre aide !

David.