OVH Cloud OVH Cloud

Requête trop complexe ?

2 réponses
Avatar
Pierre Jagut
Bonsoir,

J'ai créé une requête (en fait plusieurs requêtes qui se regroupent en une
finale), qui utilise les contrôles d'un formulaire comme filtrage et
calculs. La requête est affichée dans un sous-formulaire réactualisé sur
modification.
Les contrôles du formulaire sont indépendants. Tous sont numériques.
Je dois opérer des calculs sur ces contrôles. (des sommes).
Dans un premier temps, j'avais fait ces calculs dans les requêtes : tout
fonctionnait bien a priori, mais je me suis rendu compte que les contrôles
étaient considérés comme de l'alpha, et [C1]+[C2] aboutissait à une
concaténation et non à une somme.
J'ai donc modifié le calcul : Cent([C1])+CEnt([C2]). Mais il me dit
maintenant que la requête est trop complexe ! Cependant, si j'ouvre ma
requête indépendamment du formulaire, elle fonctionne !

Je sais donc qu'Access est capable de faire des sommes, mais serait-il trop
timide pour le montrer dans un formulaire ?

Quelqu'un aurait-il une idée pour résoudre cette difficulté ?

Pour le moment, je vais créer des contrôles indépendants invisibles sur le
formulaire qui effectueront les calculs. Je verrai si cela fonctionne. Mais
je suis preneur d'une idée plus "normale" et d'une explication.

Merci d'avance.


Pierre JAGUT

2 réponses

Avatar
Benoit Compoint
Bonjour,

Je vous propose d'essayer de simplifier ou de décomposer ce calcul en
essayant l'une des méthodes ci-dessous.

1. Au lieu de l'expression calculée
Înt([C1])+CEnt([C2])
essayez l'expression calculée :
=[C1]*1+[C2]

OU

2. Ajoutez deux contrôles invisibles CC1 et CC2 définis comme ci-dessous :
CC1 :
Înt([C1])

CC2 :
Înt([C2])

Et remplacez l'expression calculée
Înt([C1])+CEnt([C2])
par l'expression calculée :
=[CC1]+[CC2]


Benoît Compoint.

"Pierre Jagut" wrote in message
news:bkv9fo$lrr$
Bonsoir,

J'ai créé une requête (en fait plusieurs requêtes qui se regroupent en une
finale), qui utilise les contrôles d'un formulaire comme filtrage et
calculs. La requête est affichée dans un sous-formulaire réactualisé sur
modification.
Les contrôles du formulaire sont indépendants. Tous sont numériques.
Je dois opérer des calculs sur ces contrôles. (des sommes).
Dans un premier temps, j'avais fait ces calculs dans les requêtes : tout
fonctionnait bien a priori, mais je me suis rendu compte que les contrôles
étaient considérés comme de l'alpha, et [C1]+[C2] aboutissait à une
concaténation et non à une somme.
J'ai donc modifié le calcul : Cent([C1])+CEnt([C2]). Mais il me dit
maintenant que la requête est trop complexe ! Cependant, si j'ouvre ma
requête indépendamment du formulaire, elle fonctionne !

Je sais donc qu'Access est capable de faire des sommes, mais serait-il
trop

timide pour le montrer dans un formulaire ?

Quelqu'un aurait-il une idée pour résoudre cette difficulté ?

Pour le moment, je vais créer des contrôles indépendants invisibles sur le
formulaire qui effectueront les calculs. Je verrai si cela fonctionne.
Mais

je suis preneur d'une idée plus "normale" et d'une explication.

Merci d'avance.


Pierre JAGUT




Avatar
Pierre Jagut
Bonjour et merci.

J'ai testé la solution 2 et ça marche.
Je testerai plus tard la solution 1 qui me semble utile si les calculs
utilisent les données des tables.
Mais je n'ai pas d'explication sur le fait que la requête fonctionne hors
formulaire, mais ne s'affiche pas dans le formulaire.

Bonne journée.
Pierre.

"Benoit Compoint" a écrit dans le message de
news:%
Bonjour,

Je vous propose d'essayer de simplifier ou de décomposer ce calcul en
essayant l'une des méthodes ci-dessous.

1. Au lieu de l'expression calculée
Înt([C1])+CEnt([C2])
essayez l'expression calculée :
=[C1]*1+[C2]

OU

2. Ajoutez deux contrôles invisibles CC1 et CC2 définis comme ci-dessous :
CC1 :
Înt([C1])

CC2 :
Înt([C2])

Et remplacez l'expression calculée
Înt([C1])+CEnt([C2])
par l'expression calculée :
=[CC1]+[CC2]


Benoît Compoint.

"Pierre Jagut" wrote in message
news:bkv9fo$lrr$
Bonsoir,

J'ai créé une requête (en fait plusieurs requêtes qui se regroupent en
une


finale), qui utilise les contrôles d'un formulaire comme filtrage et
calculs. La requête est affichée dans un sous-formulaire réactualisé sur
modification.
Les contrôles du formulaire sont indépendants. Tous sont numériques.
Je dois opérer des calculs sur ces contrôles. (des sommes).
Dans un premier temps, j'avais fait ces calculs dans les requêtes : tout
fonctionnait bien a priori, mais je me suis rendu compte que les
contrôles


étaient considérés comme de l'alpha, et [C1]+[C2] aboutissait à une
concaténation et non à une somme.
J'ai donc modifié le calcul : Cent([C1])+CEnt([C2]). Mais il me dit
maintenant que la requête est trop complexe ! Cependant, si j'ouvre ma
requête indépendamment du formulaire, elle fonctionne !

Je sais donc qu'Access est capable de faire des sommes, mais serait-il
trop

timide pour le montrer dans un formulaire ?

Quelqu'un aurait-il une idée pour résoudre cette difficulté ?

Pour le moment, je vais créer des contrôles indépendants invisibles sur
le


formulaire qui effectueront les calculs. Je verrai si cela fonctionne.
Mais

je suis preneur d'une idée plus "normale" et d'une explication.

Merci d'avance.


Pierre JAGUT