Bloquer une macro si le format n'est pas un chiffre ou un nombre

afchartier

XLDnaute Junior
Bonsoir le forum,

quelqu'un pourrait-il m'aider,

j'ai un soucis, lorsque j'execute une macro, si les données renseignées dans le textbox1 n'est pas un chiffre ou un nombre, il fait planter la macro.

je ne pense pas que se soit très compliqué, mais il me manque un peu de vocabuliare en vb.

merci d'avance aux Excelnaute qui voudront bien se pencher sur mon problème,

et merci le forum

A+

Alain
 

Gael

XLDnaute Barbatruc
Re : Bloquer une macro si le format n'est pas un chiffre ou un nombre

Bonsoir Afchartier,

Essaye en utilisant la fonction "Isnumeric" pour conditionner l'exécution:

Code:
if isnumeric(textbox1.value) then...

@+

Gael
 

Staple1600

XLDnaute Barbatruc
Re : Bloquer une macro si le format n'est pas un chiffre ou un nombre

Bonsoir


Trouvé sur le forum

Code:
Private Sub TextBox1_Change()
With Me.TextBox1
    If Not IsNumeric(.Value) Then
         ValTextBox1 = 0
        .SelStart = 0
        .SelLength = Len(.Text)
        .SetFocus
    Else
         ValTextBox1 = .Value
    End If
End With
End Sub
source

Autre solution
Code:
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    If Not Chr(KeyAscii) Like "[0-9]" Then KeyAscii = 0
End Sub

Toujours avec Like
Code:
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If Not Chr(KeyAscii) Like "#" Then KeyAscii = 0
End Sub
 
Dernière édition:

Discussions similaires

Réponses
2
Affichages
325
Réponses
12
Affichages
616

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 429
Messages
2 088 350
Membres
103 823
dernier inscrit
ben talha redouane