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

calcul identique

6 réponses
Avatar
SHR
Bonjour,

Pouvez vous me dire pourquoi dans mon formulaire cette ligne est fausse :
TOTAL =
SOMME(VRAIFAUX(Formulaires!F_SALARIE2!salbrut>[plafond];[plafond];Formulaire
s!F_SALARIE2!sa
lbrut-
[plancher])* [txpat])

et cette ligne est juste
TOTAL =
SOMME(VRAIFAUX(2000>[plafond];[plafond];2000-[plancher])* [txpat])

alors que Formulaires!F_SALARIE2!salbrut = 2000

pour info, le calcul se fait dans un sous formulaire du formulaire
F_SALARIE2

merci

6 réponses

Avatar
Raymond [mvp]
Bonsoir.

si le calcul se fait dans le sous-formulaire, salbrut doit se trouver dans
le sous-formulaire ?
si oui, il faut indiquer le nom du sous-formulaire et du formulaire dans le
nom du contrôle:
[Formulaires]![F_SALARIE2]![sous-formulaire].[Form]![salbrut]

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"SHR" a écrit dans le message de
news:
Bonjour,

Pouvez vous me dire pourquoi dans mon formulaire cette ligne est fausse :
TOTAL >
SOMME(VRAIFAUX(Formulaires!F_SALARIE2!salbrut>[plafond];[plafond];Formulaire

s!F_SALARIE2!sa
lbrut-
[plancher])* [txpat])

et cette ligne est juste
TOTAL > SOMME(VRAIFAUX(2000>[plafond];[plafond];2000-[plancher])* [txpat])

alors que Formulaires!F_SALARIE2!salbrut = 2000

pour info, le calcul se fait dans un sous formulaire du formulaire
F_SALARIE2

merci





Avatar
SHR
non, justement mon salbrut fait partie du formulaire F_SALARIE2
ensuite dans le détail de mon sousformulaire
je fais le calcul de mes cotisations
Base * Taux = MCOT
le calcul des cotisations fonctionne
c dans mon pied de formulaire
je fais une somme des cotisations calculé dans le détail
c là que ça plante
j'ai testé de faire Somme([MCOT])
ça me sort une erreur
c pour ça que g sorti finallement ce calcul
SOMME(VRAIFAUX(Formulaires!F_SALARIE2!salbrut>[plafond];[plafond];Formulaire
s!F_SALARIE2!salbrut-[plancher])* [txpat])

"Raymond [mvp]" a écrit dans le message de
news:
Bonsoir.

si le calcul se fait dans le sous-formulaire, salbrut doit se trouver dans
le sous-formulaire ?
si oui, il faut indiquer le nom du sous-formulaire et du formulaire dans
le

nom du contrôle:
[Formulaires]![F_SALARIE2]![sous-formulaire].[Form]![salbrut]

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"SHR" a écrit dans le message de
news:
Bonjour,

Pouvez vous me dire pourquoi dans mon formulaire cette ligne est fausse
:


TOTAL > >


SOMME(VRAIFAUX(Formulaires!F_SALARIE2!salbrut>[plafond];[plafond];Formulaire

s!F_SALARIE2!sa
lbrut-
[plancher])* [txpat])

et cette ligne est juste
TOTAL > > SOMME(VRAIFAUX(2000>[plafond];[plafond];2000-[plancher])* [txpat])

alors que Formulaires!F_SALARIE2!salbrut = 2000

pour info, le calcul se fait dans un sous formulaire du formulaire
F_SALARIE2

merci









Avatar
Raymond [mvp]
je ne me suis pas attardé sur la fonction, mais:

SOMME(VRAIFAUX(Formulaires!F_SALARIE2!salbrut>[plafond];[plafond];Formulaire
s!F_SALARIE2!salbrut-[plancher])* [txpat])
ça se traduit par exemple par:

Somme( plafond* [txpat])
et ce calcul s'applique à tous les enregistrements. pourquoi somme ?
essaie ceci:
VRAIFAUX(Formulaires!F_SALARIE2!salbrut>[plafond];[plafond];Formulaires!F_SA
LARIE2!salbrut-[plancher])* [txpat]

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"SHR" a écrit dans le message de
news:
non, justement mon salbrut fait partie du formulaire F_SALARIE2
ensuite dans le détail de mon sousformulaire
je fais le calcul de mes cotisations
Base * Taux = MCOT
le calcul des cotisations fonctionne
c dans mon pied de formulaire
je fais une somme des cotisations calculé dans le détail
c là que ça plante
j'ai testé de faire Somme([MCOT])
ça me sort une erreur
c pour ça que g sorti finallement ce calcul

SOMME(VRAIFAUX(Formulaires!F_SALARIE2!salbrut>[plafond];[plafond];Formulaire

s!F_SALARIE2!salbrut-[plancher])* [txpat])


Avatar
SHR
Salut

Sympa pour tes réponses assez rapide

en fait la formule que tu m'as donné c'est celle que j'utilise dans le
détail de mon sous formulaire
c pour tous les enregistrement

dans mon pied de sous formulaire
je ve la somme de ce calcul

attends je v te faire un exemple

------------------------------------------------------------
|Formulaire F_SALARIE2
|Nom : XXXX
|Prénom : XXX
|Salbrut : 2000 ---------------------------------------
| |Sous formulaire cotisations
| |Détail sous formulaire
| |cot1 Base Tx Mcot
| |
| |Pied sous formulaire
| |Total cotisation : Somme([MCOT])
| ---------------------------------------
|
|
|
|salnet : salbrut - total cotisation
-------------------------------------------------------------

cot1 provient de la table T_COTISATION
Base est un champ calculé :
VraiFaux(Formulaires!F_SALARIE2!salbrut>[plafond];[plafond];Formulaires!F_SA
LARIE2!salbrut-[plancher])
Tx provient de la table T_COTISATION
Mcot est aussi un champ calculé : Base * Tx

Totalcotisation : champ calculé : somme([MCOT])
mais comme ça fonctionne pas j'ai fait

Somme(VraiFaux(Formulaires!F_SALARIE2!salbrut>[plafond];[plafond];Formulaire
s!F_SALARIE2!salbrut-[plancher])*Tx)
mais je crois que l'erreur provient du fait que un élément de mon calcul
provient du formulaire principal (soit salbrut)
car si je remplace comme je t'avais dit Formulaires!F_SALARIE2!salbrut par
un nombre, là ça passe bien
Avatar
Eric
Bonjour SHR

Le champ Salbrut se trouve dans le formulaire principal et le calcul de
la base de la cotisation se fait dans le sous-formulaire en comparant le
salaire brut au salaire plafond.
J'aurai tendance à mettre pour le champ Base du sous-formulaire la
formule suivante en utilisant Parent pour faire référence à ton
formulaire principal qui contient le sousform dans lequel tu fais le
calcul:

VraiFaux(Parent!SalBrut>[plafond];[plafond];Parent!SalBrut-[plancher])

(Parent!SalBrut permet d'accéder au champ SalBrut qui se trouve dans le
formulaire principal à partir d'un contrôle se trouvant dans le sous
formulaire cotisations)

Ok ?

A+
Eric

PS:le sousform n'est exploitable qu'inclut dans le form principal

"SHR" écrivait
news::

Salut

Sympa pour tes réponses assez rapide

en fait la formule que tu m'as donné c'est celle que j'utilise dans le
détail de mon sous formulaire
c pour tous les enregistrement

dans mon pied de sous formulaire
je ve la somme de ce calcul

attends je v te faire un exemple

------------------------------------------------------------
|Formulaire F_SALARIE2
|Nom : XXXX
|Prénom : XXX
|Salbrut : 2000 ---------------------------------------
| |Sous formulaire cotisations
| |Détail sous formulaire
| |cot1 Base Tx Mcot
| |
| |Pied sous formulaire
| |Total cotisation : Somme([MCOT])
| ---------------------------------------
|
|
|
|salnet : salbrut - total cotisation
-------------------------------------------------------------

cot1 provient de la table T_COTISATION
Base est un champ calculé :
VraiFaux(Formulaires!F_SALARIE2!salbrut>[plafond];[plafond];Formulaires
!F_SA LARIE2!salbrut-[plancher])
Tx provient de la table T_COTISATION
Mcot est aussi un champ calculé : Base * Tx

Totalcotisation : champ calculé : somme([MCOT])
mais comme ça fonctionne pas j'ai fait

Somme(VraiFaux(Formulaires!F_SALARIE2!salbrut>[plafond];[plafond];Formu
laire s!F_SALARIE2!salbrut-[plancher])*Tx)
mais je crois que l'erreur provient du fait que un élément de mon
calcul provient du formulaire principal (soit salbrut)
car si je remplace comme je t'avais dit Formulaires!F_SALARIE2!salbrut
par un nombre, là ça passe bien







Avatar
Raymond [mvp]
50 raisons pour que ça ne fonctionne pas.
il peut y avoir une valeur Null qui casse tout.
plafond se trouve où ?
etc....

si tu ne trouve pas ce matin, fais une base minimum avec tes 2 formulaires ,
requête et tables avec le minimum de données et si tu es d'accord et si tu
as le droit, tu me l'envoies par mail en enlevant XYZ. dans mon adresse, je
jetterai un oeil.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access.vba.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"SHR" a écrit dans le message de
news:
Salut

Sympa pour tes réponses assez rapide

en fait la formule que tu m'as donné c'est celle que j'utilise dans le
détail de mon sous formulaire
c pour tous les enregistrement

dans mon pied de sous formulaire
je ve la somme de ce calcul