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

champs qui ne se met pas à jour ?

6 réponses
Avatar
URIANE
Bonjour,
j'ai un champs qui se nomme "calculj", dans la source de contrôle des
propriétés de mon champs j'ai ceci :
=(nz([TTM])+nz([ttL])+nz([TTME])+nz([TTJ])+nz([TTV])+nz([TTS])+nz([TTD]))
Donc j'obtiens un résultat qui se situe en 1 et 6, j'ai créé un second
champs que j'ai nommé "CP2". Je souhaite que dans ce champs selon le
résultat qui sera dans le champs "calculj" un nombre de jours s'affiche .
Dans mon champs "calculj" j'ai mis ceci comme évenement après mise à jour et
sur changement de ce champs :
Private Sub calcJours_AfterUpdate()
If Me.calcJours = 6 Then
Me.CP2 = 37.5
If Me.calcJours = 5.5 Then
Me.CP2 = 35
If Me.calcJours = 5 Then
Me.CP2 = 32.5
If Me.calcJours = 4.5 Then
Me.CP2 = 30
If Me.calcJours = 4 Then
Me.CP2 = 27.5
Else
Me.CP2 = 0
End If
End If
End If
End If
End If
End Sub
Rien ne se passe, pouvez-vous me dire ou se situe mon erreur.
Par avance je vous en remercie

6 réponses

Avatar
ze Titi
Bonjour URIANE

Déjà, utilise le select case plutôt que le If dans ton cas, ça rend ton
code beaucoup plus lisible...

Select case Me.CalcJours
Case 6: me.CP27,5
Case 5,5: me.CP25
Case 5: me.CP22,5
Case 4,5: me.CP20
Case 4: me.CP2',5
Case else: me.CP2=0
End Select

Dis-nous !

Dans ton message du mercredi
Bonjour,
j'ai un champs qui se nomme "calculj", dans la source de contrôle des
propriétés de mon champs j'ai ceci :
=(nz([TTM])+nz([ttL])+nz([TTME])+nz([TTJ])+nz([TTV])+nz([TTS])+nz([TTD]))
Donc j'obtiens un résultat qui se situe en 1 et 6, j'ai créé un second champs
que j'ai nommé "CP2". Je souhaite que dans ce champs selon le résultat qui
sera dans le champs "calculj" un nombre de jours s'affiche .
Dans mon champs "calculj" j'ai mis ceci comme évenement après mise à jour et
sur changement de ce champs :
Private Sub calcJours_AfterUpdate()
If Me.calcJours = 6 Then
Me.CP2 = 37.5
If Me.calcJours = 5.5 Then
Me.CP2 = 35
If Me.calcJours = 5 Then
Me.CP2 = 32.5
If Me.calcJours = 4.5 Then
Me.CP2 = 30
If Me.calcJours = 4 Then
Me.CP2 = 27.5
Else
Me.CP2 = 0
End If
End If
End If
End If
End If
End Sub
Rien ne se passe, pouvez-vous me dire ou se situe mon erreur.
Par avance je vous en remercie


--
Voilou !
Bon courage !
Cordialement,
ze Titi

Avatar
Pierre CFI [mvp]
bonjour
dans ton cas l'évenement afterupdate est inopérant
fait une fonction que tu appelles dans la source du controle
=Mafonction([calcJours])

function mafonction (Qui as Double)
If Qui = 6 Then
mafonction = 37.5
la suite.....

--
Pierre
MVP Access
***************************************
Conseils MPFA: http://www.mpfa.info/
*********************************************************
"URIANE" a écrit dans le message de news:

Bonjour,
j'ai un champs qui se nomme "calculj", dans la source de contrôle des
propriétés de mon champs j'ai ceci :
=(nz([TTM])+nz([ttL])+nz([TTME])+nz([TTJ])+nz([TTV])+nz([TTS])+nz([TTD]))
Donc j'obtiens un résultat qui se situe en 1 et 6, j'ai créé un second
champs que j'ai nommé "CP2". Je souhaite que dans ce champs selon le
résultat qui sera dans le champs "calculj" un nombre de jours s'affiche .
Dans mon champs "calculj" j'ai mis ceci comme évenement après mise à jour
et sur changement de ce champs :
Private Sub calcJours_AfterUpdate()
If Me.calcJours = 6 Then
Me.CP2 = 37.5
If Me.calcJours = 5.5 Then
Me.CP2 = 35
If Me.calcJours = 5 Then
Me.CP2 = 32.5
If Me.calcJours = 4.5 Then
Me.CP2 = 30
If Me.calcJours = 4 Then
Me.CP2 = 27.5
Else
Me.CP2 = 0
End If
End If
End If
End If
End If
End Sub
Rien ne se passe, pouvez-vous me dire ou se situe mon erreur.
Par avance je vous en remercie



Avatar
URIANE
J'avais trouvé une autre façon de faire qui elle, fonctionne :
dans mon champs "CP2" comme je veux voir apparaître un résultat, à savoir le
nombre de jours de congés par rapport au nombre de jours travaillés dans une
semaine et en fonction de notre système d'attribution de congés j'ai repris
le calcul de ma source de contrôle de mon champs
"calculj" et j'ai prolongé mon calcul comme suit :
=(nz([TTM])+nz([ttL])+nz([TTME])+nz([TTJ])+nz([TTV])+nz([TTS])+nz([TTD]))*5+7,5
Par contre je vous remercie pour votre réponse car il est vrai que je
n'utilise jamais le "select case" car je ne suis pas très familière avec
cette expression, mais je vais la tester avec un autre champs pour la
connaître un peu mieux.

Merci à vous d'avoir répondu aussi vite, mais je n'ai pas eu la patience
d'attendre votre réponse c'est pour cela que j'ai essayé une autre façon de
procéder....
J'explique mon calcul, on ne sait jamais ça peut servir à quelqu'un :
=(nz([TTM])+nz([ttL])+nz([TTME])+nz([TTJ])+nz([TTV])+nz([TTS])+nz([TTD]))
ceci est l'addition de champs résultats, ou le résultat est (1 )si l'agent
travaille sa journée complète ou (0.5) si l'agent travaille soit le matin
soit l'après-midi, donc au total j'obtiens le nombre de jours travaillés
dans la semaine.
*5+7,5
Je multiplie mon résultat par (5 )qui est le nombre de jours théoriques que
l'on doit travailler selon la convention, je rajoute (2 )jours de
bonification + (5.5 )jours de congés exceptionnels qui sont attribués à
chaque agent, et le final me donnera en fonction du nombre de jours réels
travaillés dans la semaine le nombre de jours de congés annuels à prendre.
A bientôt
Avatar
Pierre CFI [mvp]
pas d'évenement dans le cas présent, titi nom dé diou :o))

--
Pierre
MVP Access
***************************************
Conseils MPFA: http://www.mpfa.info/
*********************************************************
"ze Titi" a écrit dans le message de news:

Bonjour URIANE

Déjà, utilise le select case plutôt que le If dans ton cas, ça rend ton
code beaucoup plus lisible...

Select case Me.CalcJours
Case 6: me.CP27,5
Case 5,5: me.CP25
Case 5: me.CP22,5
Case 4,5: me.CP20
Case 4: me.CP2',5
Case else: me.CP2=0
End Select

Dis-nous !

Dans ton message du mercredi
Bonjour,
j'ai un champs qui se nomme "calculj", dans la source de contrôle des
propriétés de mon champs j'ai ceci :
=(nz([TTM])+nz([ttL])+nz([TTME])+nz([TTJ])+nz([TTV])+nz([TTS])+nz([TTD]))
Donc j'obtiens un résultat qui se situe en 1 et 6, j'ai créé un second
champs que j'ai nommé "CP2". Je souhaite que dans ce champs selon le
résultat qui sera dans le champs "calculj" un nombre de jours s'affiche .
Dans mon champs "calculj" j'ai mis ceci comme évenement après mise à jour
et sur changement de ce champs :
Private Sub calcJours_AfterUpdate()
If Me.calcJours = 6 Then
Me.CP2 = 37.5
If Me.calcJours = 5.5 Then
Me.CP2 = 35
If Me.calcJours = 5 Then
Me.CP2 = 32.5
If Me.calcJours = 4.5 Then
Me.CP2 = 30
If Me.calcJours = 4 Then
Me.CP2 = 27.5
Else
Me.CP2 = 0
End If
End If
End If
End If
End If
End Sub
Rien ne se passe, pouvez-vous me dire ou se situe mon erreur.
Par avance je vous en remercie


--
Voilou !
Bon courage !
Cordialement,
ze Titi





Avatar
ze Titi
Bonjour Pierre CFI [mvp]

Vi, je me suis dit ça mais après avoir cliqué sur "Envoyer"... :/


Dans ton message <eo#7s$ du mercredi
pas d'évenement dans le cas présent, titi nom dé diou :o))

--
Pierre
MVP Access
***************************************
Conseils MPFA: http://www.mpfa.info/
*********************************************************
"ze Titi" a écrit dans le message de news:

Bonjour URIANE

Déjà, utilise le select case plutôt que le If dans ton cas, ça rend ton
code beaucoup plus lisible...

Select case Me.CalcJours
Case 6: me.CP27,5
Case 5,5: me.CP25
Case 5: me.CP22,5
Case 4,5: me.CP20
Case 4: me.CP2',5
Case else: me.CP2=0
End Select

Dis-nous !

Dans ton message du mercredi
Bonjour,
j'ai un champs qui se nomme "calculj", dans la source de contrôle des
propriétés de mon champs j'ai ceci :
=(nz([TTM])+nz([ttL])+nz([TTME])+nz([TTJ])+nz([TTV])+nz([TTS])+nz([TTD]))
Donc j'obtiens un résultat qui se situe en 1 et 6, j'ai créé un second
champs que j'ai nommé "CP2". Je souhaite que dans ce champs selon le
résultat qui sera dans le champs "calculj" un nombre de jours s'affiche .
Dans mon champs "calculj" j'ai mis ceci comme évenement après mise à jour
et sur changement de ce champs :
Private Sub calcJours_AfterUpdate()
If Me.calcJours = 6 Then
Me.CP2 = 37.5
If Me.calcJours = 5.5 Then
Me.CP2 = 35
If Me.calcJours = 5 Then
Me.CP2 = 32.5
If Me.calcJours = 4.5 Then
Me.CP2 = 30
If Me.calcJours = 4 Then
Me.CP2 = 27.5
Else
Me.CP2 = 0
End If
End If
End If
End If
End If
End Sub
Rien ne se passe, pouvez-vous me dire ou se situe mon erreur.
Par avance je vous en remercie


-- Voilou !
Bon courage !
Cordialement,
ze Titi





--
Voilou !
Bon courage !
Cordialement,
ze Titi



Avatar
Pierre CFI [mvp]
TROP TARD
1 point en moins, ah ,çà va étre l'heure de l'entrée en piste
du grand, du beau 3stone et ses 3stonettes....

--
Pierre
MVP Access
***************************************
Conseils MPFA: http://www.mpfa.info/
*********************************************************
"ze Titi" a écrit dans le message de news:

Bonjour Pierre CFI [mvp]

Vi, je me suis dit ça mais après avoir cliqué sur "Envoyer"... :/


Dans ton message <eo#7s$ du mercredi
pas d'évenement dans le cas présent, titi nom dé diou :o))

--
Pierre
MVP Access
***************************************
Conseils MPFA: http://www.mpfa.info/
*********************************************************
"ze Titi" a écrit dans le message de
news:
Bonjour URIANE

Déjà, utilise le select case plutôt que le If dans ton cas, ça rend ton
code beaucoup plus lisible...

Select case Me.CalcJours
Case 6: me.CP27,5
Case 5,5: me.CP25
Case 5: me.CP22,5
Case 4,5: me.CP20
Case 4: me.CP2',5
Case else: me.CP2=0
End Select

Dis-nous !

Dans ton message du mercredi
Bonjour,
j'ai un champs qui se nomme "calculj", dans la source de contrôle des
propriétés de mon champs j'ai ceci :
=(nz([TTM])+nz([ttL])+nz([TTME])+nz([TTJ])+nz([TTV])+nz([TTS])+nz([TTD]))
Donc j'obtiens un résultat qui se situe en 1 et 6, j'ai créé un second
champs que j'ai nommé "CP2". Je souhaite que dans ce champs selon le
résultat qui sera dans le champs "calculj" un nombre de jours s'affiche
.
Dans mon champs "calculj" j'ai mis ceci comme évenement après mise à
jour et sur changement de ce champs :
Private Sub calcJours_AfterUpdate()
If Me.calcJours = 6 Then
Me.CP2 = 37.5
If Me.calcJours = 5.5 Then
Me.CP2 = 35
If Me.calcJours = 5 Then
Me.CP2 = 32.5
If Me.calcJours = 4.5 Then
Me.CP2 = 30
If Me.calcJours = 4 Then
Me.CP2 = 27.5
Else
Me.CP2 = 0
End If
End If
End If
End If
End If
End Sub
Rien ne se passe, pouvez-vous me dire ou se situe mon erreur.
Par avance je vous en remercie


-- Voilou !
Bon courage !
Cordialement,
ze Titi





--
Voilou !
Bon courage !
Cordialement,
ze Titi