Format sur TextBox

Amandine_

XLDnaute Nouveau
Bonjour all,

Je veux mettre le signe € à mon montant affiché dans ma textbox. Malheureusement, dès que je veux entrer un chiffre une horde de € rempli le textbox.

Voici le détail :

Private Sub TextBoxPV_Change()

TextBoxPV.Value = Format(TextBoxPV.Value, '0.00') & '€'

End Sub

Merci de bien vouloir m'aider...
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Bonjour

C'est normal puisque tu le fais sur l'evenement Change. Donc à chaque fois que la textbox change don à chaque fois que tu tapes un chiffre tu appliques ton code

Mets plutot ton code sur l'evenement exit de ta textbox

Bonne soirée
 

Charly2

Nous a quittés en 2006
Repose en paix
Bonjour Amandine et Pascal :)

Ce que dit Pascal est juste et, de plus, à chaque fois que ton code modifie ta TextBox, l'événement Change est à nouveau appelé (boucle sans fin).

Pour illustrer ce que t'a dit Pascal :

Dim InChange As Boolean

Private Sub TextBox1_Change()
  If Not InChange Then
    InChange = True
    ' Ton Code...
    InChange = False
  End If
End Sub


Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  If Not InChange Then
    InChange = True
    TextBoxPV.Value = Format(TextBoxPV.Value, '0.00') & '€'
    InChange = False
  End If
End Sub

La variable InChange n'est pas utile si tu n'as pas d'événement Change sur ta TextBox. A utiliser dans le cas contraire...

Amicalement
Charly

Message édité par: Charly2, à: 29/12/2005 16:39
 

Discussions similaires

Réponses
15
Affichages
516

Statistiques des forums

Discussions
312 339
Messages
2 087 403
Membres
103 537
dernier inscrit
alisafred974