calcul dans un champ formulaire et resultat dans champ suivant
5 réponses
jean
Bonjour,
désolé, j'ai déjà vu la réponse à cette question quelque part, mais je
ne la retrouve pas dans les archives.
Mon problème : j'ai une table, avec deux champs : "texte1" et "montant1".
Dans le formulaire basé sur cette table, je saisis du texte dans
"texte1" et la valeur dans "montant1". Parfois, je souhaite saisir : "+1
+6 -2 " dans "texte1" et lorsque je valide, je veux passer au champ
"montant1" qui m'affichera le résultat "+ 5". Le champ "montant1" doit
pouvoir être modifié.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
jean
Bonjour, J'ai trouvé quelque chose, mais ça ne marche pas vraiment comme je le souhaite : Dans la zone "texte1", j'ai ajouté sur l'évènement "perte focus" :
Private Sub texte1_LostFocus() Me.montant1 = Eval(Me.texte1) End Sub
si je saisis "10+3" dans texte1, j'obtiens "13" dans montant1, OK. Je valide montant1 par "entrée" (je peux le modifier si je veux), je passe à l'enregistrement suivant, toujours OK. Par contre, là, si je veux retourner en arrière dans "montant1" de l'enregistrement précédent, j'obtiens un message d'erreur :
Erreur d'exécution "94": Utilisation incorrecte de Null
Merci d'avance pour votre réponse.
JP
Bonjour,
J'ai trouvé quelque chose, mais ça ne marche pas vraiment comme je le
souhaite :
Dans la zone "texte1", j'ai ajouté sur l'évènement "perte focus" :
Private Sub texte1_LostFocus()
Me.montant1 = Eval(Me.texte1)
End Sub
si je saisis "10+3" dans texte1, j'obtiens "13" dans montant1, OK. Je
valide montant1 par "entrée" (je peux le modifier si je veux), je passe
à l'enregistrement suivant, toujours OK.
Par contre, là, si je veux retourner en arrière dans "montant1" de
l'enregistrement précédent, j'obtiens un message d'erreur :
Erreur d'exécution "94":
Utilisation incorrecte de Null
Bonjour, J'ai trouvé quelque chose, mais ça ne marche pas vraiment comme je le souhaite : Dans la zone "texte1", j'ai ajouté sur l'évènement "perte focus" :
Private Sub texte1_LostFocus() Me.montant1 = Eval(Me.texte1) End Sub
si je saisis "10+3" dans texte1, j'obtiens "13" dans montant1, OK. Je valide montant1 par "entrée" (je peux le modifier si je veux), je passe à l'enregistrement suivant, toujours OK. Par contre, là, si je veux retourner en arrière dans "montant1" de l'enregistrement précédent, j'obtiens un message d'erreur :
Erreur d'exécution "94": Utilisation incorrecte de Null
Merci d'avance pour votre réponse.
JP
Fabien
Bonjour, J'ai trouvé quelque chose, mais ça ne marche pas vraiment comme je le souhaite : Dans la zone "texte1", j'ai ajouté sur l'évènement "perte focus" :
Private Sub texte1_LostFocus() Me.montant1 = Eval(Me.texte1) End Sub
si je saisis "10+3" dans texte1, j'obtiens "13" dans montant1, OK. Je valide montant1 par "entrée" (je peux le modifier si je veux), je passe à l'enregistrement suivant, toujours OK. Par contre, là, si je veux retourner en arrière dans "montant1" de l'enregistrement précédent, j'obtiens un message d'erreur :
Erreur d'exécution "94": Utilisation incorrecte de Null
Merci d'avance pour votre réponse.
JP Bonjour,
Avec un petit eval(nz(me.texte1,0)) ça devrait passer :-) @+
Bonjour,
J'ai trouvé quelque chose, mais ça ne marche pas vraiment comme je le
souhaite :
Dans la zone "texte1", j'ai ajouté sur l'évènement "perte focus" :
Private Sub texte1_LostFocus()
Me.montant1 = Eval(Me.texte1)
End Sub
si je saisis "10+3" dans texte1, j'obtiens "13" dans montant1, OK. Je
valide montant1 par "entrée" (je peux le modifier si je veux), je passe
à l'enregistrement suivant, toujours OK.
Par contre, là, si je veux retourner en arrière dans "montant1" de
l'enregistrement précédent, j'obtiens un message d'erreur :
Erreur d'exécution "94":
Utilisation incorrecte de Null
Merci d'avance pour votre réponse.
JP
Bonjour,
Avec un petit eval(nz(me.texte1,0)) ça devrait passer :-)
@+
Bonjour, J'ai trouvé quelque chose, mais ça ne marche pas vraiment comme je le souhaite : Dans la zone "texte1", j'ai ajouté sur l'évènement "perte focus" :
Private Sub texte1_LostFocus() Me.montant1 = Eval(Me.texte1) End Sub
si je saisis "10+3" dans texte1, j'obtiens "13" dans montant1, OK. Je valide montant1 par "entrée" (je peux le modifier si je veux), je passe à l'enregistrement suivant, toujours OK. Par contre, là, si je veux retourner en arrière dans "montant1" de l'enregistrement précédent, j'obtiens un message d'erreur :
Erreur d'exécution "94": Utilisation incorrecte de Null
Merci d'avance pour votre réponse.
JP Bonjour,
Avec un petit eval(nz(me.texte1,0)) ça devrait passer :-) @+
jean
Avec un petit eval(nz(me.texte1,0)) ça devrait passer :-)
merci pour la réponse rapide. En effet, ça marche, mais si je mets du texte dans texte1, j'ai l'erreur suivante :
erreur d'exécution 2482 : Impossible pour Access de trouver le nom 'xxx' entré dans l'expression.
Une idée ?
Merci d'avance
JP
Avec un petit eval(nz(me.texte1,0)) ça devrait passer :-)
merci pour la réponse rapide. En effet, ça marche, mais si je mets du
texte dans texte1, j'ai l'erreur suivante :
erreur d'exécution 2482 :
Impossible pour Access de trouver le nom 'xxx' entré dans l'expression.
Avec un petit eval(nz(me.texte1,0)) ça devrait passer :-)
merci pour la réponse rapide. En effet, ça marche, mais si je mets du texte dans texte1, j'ai l'erreur suivante :
erreur d'exécution 2482 : Impossible pour Access de trouver le nom 'xxx' entré dans l'expression.
Une idée ?
Merci d'avance
JP
Fabien
Avec un petit eval(nz(me.texte1,0)) ça devrait passer :-)
merci pour la réponse rapide. En effet, ça marche, mais si je mets du texte dans texte1, j'ai l'erreur suivante :
erreur d'exécution 2482 : Impossible pour Access de trouver le nom 'xxx' entré dans l'expression.
Une idée ?
Merci d'avance
JP Salut,
Quand tu dis du texte c'est .... du texte, genre 'toto est parti a la plage' ? ou une expression mathématique genre '5+2' ? Si c'est la premiére option alors je ne vois pas comment contourner le probléme autrement qu'en testant ton expression avant de la soumettre a la fonction eval().
Avec un petit eval(nz(me.texte1,0)) ça devrait passer :-)
merci pour la réponse rapide. En effet, ça marche, mais si je mets du
texte dans texte1, j'ai l'erreur suivante :
erreur d'exécution 2482 :
Impossible pour Access de trouver le nom 'xxx' entré dans l'expression.
Une idée ?
Merci d'avance
JP
Salut,
Quand tu dis du texte c'est .... du texte, genre 'toto est parti a la
plage' ?
ou une expression mathématique genre '5+2' ?
Si c'est la premiére option alors je ne vois pas comment contourner le
probléme autrement qu'en testant ton expression avant de la soumettre a
la fonction eval().
Avec un petit eval(nz(me.texte1,0)) ça devrait passer :-)
merci pour la réponse rapide. En effet, ça marche, mais si je mets du texte dans texte1, j'ai l'erreur suivante :
erreur d'exécution 2482 : Impossible pour Access de trouver le nom 'xxx' entré dans l'expression.
Une idée ?
Merci d'avance
JP Salut,
Quand tu dis du texte c'est .... du texte, genre 'toto est parti a la plage' ? ou une expression mathématique genre '5+2' ? Si c'est la premiére option alors je ne vois pas comment contourner le probléme autrement qu'en testant ton expression avant de la soumettre a la fonction eval().
jean
Bonjour,
Avec un petit eval(nz(me.texte1,0)) ça devrait passer :-)
ça marche, mais si je mets du texte dans texte1, j'ai l'erreur suivante :
erreur d'exécution 2482 : Impossible pour Access de trouver le nom 'xxx' entré dans l'expression.
Quand tu dis du texte c'est .... du texte, genre 'toto est parti a la
plage' ? ou une expression mathématique genre '5+2' ? Si c'est la premiére option alors je ne vois pas comment contourner le probléme autrement qu'en testant ton expression avant de la soumettre a la fonction eval().
En effet, c'est du texte pur (désignation d'une vente). J'ai donc résolu le problème avec un test un peu brutal, mais ça marche parfaitement dans tous les sens.
Private Sub texte1_AfterUpdate() On Error GoTo fin Me.montant = Eval(Nz(Me.Texte1, 0)) fin: End Sub
Merci beaucoup pour ton aide.
JP
Bonjour,
Avec un petit eval(nz(me.texte1,0)) ça devrait passer :-)
ça marche, mais si je mets du
texte dans texte1, j'ai l'erreur suivante :
erreur d'exécution 2482 :
Impossible pour Access de trouver le nom 'xxx' entré dans l'expression.
Quand tu dis du texte c'est .... du texte, genre 'toto est parti a la
plage' ?
ou une expression mathématique genre '5+2' ?
Si c'est la premiére option alors je ne vois pas comment contourner le
probléme autrement qu'en testant ton expression avant de la soumettre a
la fonction eval().
En effet, c'est du texte pur (désignation d'une vente). J'ai donc résolu
le problème avec un test un peu brutal, mais ça marche parfaitement
dans tous les sens.
Private Sub texte1_AfterUpdate()
On Error GoTo fin
Me.montant = Eval(Nz(Me.Texte1, 0))
fin:
End Sub
Avec un petit eval(nz(me.texte1,0)) ça devrait passer :-)
ça marche, mais si je mets du texte dans texte1, j'ai l'erreur suivante :
erreur d'exécution 2482 : Impossible pour Access de trouver le nom 'xxx' entré dans l'expression.
Quand tu dis du texte c'est .... du texte, genre 'toto est parti a la
plage' ? ou une expression mathématique genre '5+2' ? Si c'est la premiére option alors je ne vois pas comment contourner le probléme autrement qu'en testant ton expression avant de la soumettre a la fonction eval().
En effet, c'est du texte pur (désignation d'une vente). J'ai donc résolu le problème avec un test un peu brutal, mais ça marche parfaitement dans tous les sens.
Private Sub texte1_AfterUpdate() On Error GoTo fin Me.montant = Eval(Nz(Me.Texte1, 0)) fin: End Sub