Gestion d’erreur dans les TextBox

  • Initiateur de la discussion Initiateur de la discussion pias
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

P

pias

Guest
Rebonjour le Forum

Dans l’attente d’une réponse dans le post de dimanche <http://www.excel-downloads.com/html/French/forum/messages/1_135458_135458.htm>
Je continue mon application et je but sur un autre problème !

La gestion d’erreur dans les TextBox, ci-dessous le code.

Il fonctionne très bien mais à la condition d’introduire un nombre entier ou séparé par un point 1.2 par exemple.
Mais si quelqu’un fais une erreur et introduit du texte au même un nombre avec virgule exemple 1,2 ça provoque une erreur.

Je essayer d’ajouter ça :
If Error Then GoTo MonCodeEnCasErreur
MonCodeEnCasErreur:
MsgBox "Pas de Texte ni de nombres avec virgules"

Mais soit je ne le mets pas au bon endroit ou alors c’est pas de tous ça.
Enfin je fais le possible avec les connaissances que j’ai en VBA mais ce n’est pas facile
et heureusement qu’il a Excel-downloads au quel je dois le peut que je sais
Merci d’avance pour tout.

----------------------------------------
Private Sub bouilly_Change()
If pourcent.Value = "" Then Exit Sub
For i = 1 To Len(bouilly.Value)
Quantité = bouilly * (pourcent * 10)
Next i
End Sub
Private Sub pourcent_Change()
If bouilly.Value = "" Then Exit Sub
For i = 1 To Len(pourcent.Value)
Quantité = bouilly * (pourcent * 10)
Next i
End Sub
-------------------------------------
Pias
Amicalement

...On se lasse de tout sauf d’apprendre !..
 
Bonjour

essaye ceci :

Private Sub CommandButton1_Click()
'on remplace le "." par la ","
TextBox1.Value = Application.WorksheetFunction.Substitute(TextBox1.Value, ".", ",")
'on vérifie si la valeur du textbox1 est bien du numérique
If Not IsNumeric(TextBox1.Value) Then
'si non on envoie un message
MsgBox "Merci de rentrer du numérique.", , "Attention..."
'on redonne le focus au textbox1
TextBox1.SetFocus
'on prépare le textbox1 pour la correction
TextBox1.SelStart = 0
TextBox1.SelLength = Len(Me.TextBox1)
'on sort de la macro
Exit Sub
End If
'on place en A1 la valeur du textbox1.value sour forme de chiffre et non de texte
Range("a1").Value = CSng(TextBox1.Value)
End Sub

salut
Hervé
 
Bonsoir Hervé et le Forum

Avec une petite modification pour adapter a mon application, ta proposition ma été très utile.
Ça fonctionne parfaitement.
Je te dis un grand Merci , et comme il est tard je te souhaite une bonne nuit et passe une excellente journée demain.

Amicalement

...On se lasse de tout sauf d’apprendre !..
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
457
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
482
Réponses
3
Affichages
569
Retour