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

format monétaire

5 réponses
Avatar
elect31
Bonjour à tous
Je voudrais qu'une zone de texte (contenue dans un formulaire), affiche
le chiffre que j'y inscrit en format monétaire.
J'ai essayé cette procédure évènementielle ( qui ne fait rien bien
entendu, sinon je ne vous solliciterais pas...)

Private Sub TxtBxSoldeRelevé_AfterUpdate()
Dim soldeReleve As Double
Dim monSoldeReleve As String, temp As String
temp = Replace(TxtBxSoldeRelevé.Value, ".", ",", 1, 1, vbTextCompare)
soldeReleve = CDbl(temp)
monSoldeReleve = Format(soldeReleve, "#,##0.00 €")
End sub

la zone de texte se nomme : TxtBxSoldeRelevé
Elle me donne du texte saisi au pavé numérique avec un point au lieu de
la virgule.
temp modifie ce point en virgule
Je convertis tout ça en Double et j'applique le format.

Tout me semble correct, je me trompe peut être d'évènement?

Merci de vos réponses

5 réponses

Avatar
elect31
Sorry
J'avais oublié une ligne :
TxtBxSoldeRelevé = monSoldeReleve


elect31 a écrit :
Bonjour à tous
Je voudrais qu'une zone de texte (contenue dans un formulaire), affiche
le chiffre que j'y inscrit en format monétaire.
J'ai essayé cette procédure évènementielle ( qui ne fait rien bien
entendu, sinon je ne vous solliciterais pas...)

Private Sub TxtBxSoldeRelevé_AfterUpdate()
Dim soldeReleve As Double
Dim monSoldeReleve As String, temp As String
temp = Replace(TxtBxSoldeRelevé.Value, ".", ",", 1, 1, vbTextCompare)
soldeReleve = CDbl(temp)
monSoldeReleve = Format(soldeReleve, "#,##0.00 €")
End sub

la zone de texte se nomme : TxtBxSoldeRelevé
Elle me donne du texte saisi au pavé numérique avec un point au lieu de
la virgule.
temp modifie ce point en virgule
Je convertis tout ça en Double et j'applique le format.

Tout me semble correct, je me trompe peut être d'évènement?

Merci de vos réponses


Avatar
garnote
Ave elect31,

Ceci te convient-il ?

Private Sub TxtBxSoldeRelevé_AfterUpdate()
temp = CDbl(Replace(TxtBxSoldeRelevé, ".", ","))
TxtBxSoldeRelevé = Format(temp, "#,##0.00 €")
End Sub

Serge


"elect31" a écrit dans le message de news:

Bonjour à tous
Je voudrais qu'une zone de texte (contenue dans un formulaire), affiche le
chiffre que j'y inscrit en format monétaire.
J'ai essayé cette procédure évènementielle ( qui ne fait rien bien
entendu, sinon je ne vous solliciterais pas...)

Private Sub TxtBxSoldeRelevé_AfterUpdate()
Dim soldeReleve As Double
Dim monSoldeReleve As String, temp As String
temp = Replace(TxtBxSoldeRelevé.Value, ".", ",", 1, 1, vbTextCompare)
soldeReleve = CDbl(temp)
monSoldeReleve = Format(soldeReleve, "#,##0.00 €")
End sub

la zone de texte se nomme : TxtBxSoldeRelevé
Elle me donne du texte saisi au pavé numérique avec un point au lieu de la
virgule.
temp modifie ce point en virgule
Je convertis tout ça en Double et j'applique le format.

Tout me semble correct, je me trompe peut être d'évènement?

Merci de vos réponses


Avatar
garnote
Et si ma suggestion te convient, il serait
prudent d'écrire ceci :
On Error Resume Next
au début de la macro.

Serge


"garnote" a écrit dans le message de news:
u8M51m$
Ave elect31,

Ceci te convient-il ?

Private Sub TxtBxSoldeRelevé_AfterUpdate()
temp = CDbl(Replace(TxtBxSoldeRelevé, ".", ","))
TxtBxSoldeRelevé = Format(temp, "#,##0.00 ?")
End Sub

Serge


"elect31" a écrit dans le message de news:

Bonjour à tous
Je voudrais qu'une zone de texte (contenue dans un formulaire), affiche
le chiffre que j'y inscrit en format monétaire.
J'ai essayé cette procédure évènementielle ( qui ne fait rien bien
entendu, sinon je ne vous solliciterais pas...)

Private Sub TxtBxSoldeRelevé_AfterUpdate()
Dim soldeReleve As Double
Dim monSoldeReleve As String, temp As String
temp = Replace(TxtBxSoldeRelevé.Value, ".", ",", 1, 1, vbTextCompare)
soldeReleve = CDbl(temp)
monSoldeReleve = Format(soldeReleve, "#,##0.00 ?")
End sub

la zone de texte se nomme : TxtBxSoldeRelevé
Elle me donne du texte saisi au pavé numérique avec un point au lieu de
la virgule.
temp modifie ce point en virgule
Je convertis tout ça en Double et j'applique le format.

Tout me semble correct, je me trompe peut être d'évènement?

Merci de vos réponses






Avatar
garnote
> Private Sub TxtBxSoldeRelevé_AfterUpdate()
temp = CDbl(Replace(TxtBxSoldeRelevé, ".", ","))
TxtBxSoldeRelevé = Format(temp, "#,##0.00 ?")
End Sub



Le point d'interrogation représentant le symbole de l'euro.

Serge
Avatar
elect31
Merci pour ta reponse
elect
garnote a écrit :
Private Sub TxtBxSoldeRelevé_AfterUpdate()
temp = CDbl(Replace(TxtBxSoldeRelevé, ".", ","))
TxtBxSoldeRelevé = Format(temp, "#,##0.00 ?")
End Sub



Le point d'interrogation représentant le symbole de l'euro.

Serge