XL 2010 [Résolu] Textbox numérique

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 !

alias_2003

XLDnaute Occasionnel
Bonjour à tous,
Dans un userform, j'ai une textbox nommée TBNombre pour laquelle je force la saisie numérique.
J'utilise à cette fin, le code suivant :
Code:
Private Sub TBNombre_Change()

    If InStr("0123456789", Right(Me.TBNombre, 1)) = 0 Then
        Me.TBNombre = Left(Me.TBNombre, Len(Me.TBNombre) - 1)
    End If
End Sub

J'aimerais savoir s'il est possible d'empêcher une saisie à 0, la TBNombre doit toujours contenir au moins 1 pièce.
Merci à vous,
Amicalement
 
Bonsoir alias_2003,

Peut-être en rajoutant quand on quitte le textbox (pas testé):
VB:
Private Sub TBNombre_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
   If Val(TBNombre) = 0 Then
      Cancel = True
      MsgBox "La quantité minimum est 1 !", vbCritical
   End If
End Sub
 
Bonjour youky(Bj), mapomme, le Forum,
Merci beaucoup à vous 2 ! Je ne comprends pas pourquoi je me suis compliqué la vie...
J'ai choisi la solution de mapomme qui fonctionne parfaitement, par contre j'aurais aimé que le curseur reste dans cette textbox et la commande setfocus ne le permet pas. Une idée ?
Merci encore,
Bonne soirée !
 
bonjour Alias🙂 ,youky🙂,Tatiak🙂,Mapomme🙂🙂
la meme chose en "affinant" un peu .......considere pas de decimales

VB:
Private Sub TBNombre_Exit(ByVal C As MSForms.ReturnBoolean)
C = IIf(TBNombre = "", 1, 0)
End Sub
Private Sub TBNombre_keyPress(ByVal K As MSForms.ReturnInteger)
If InStr("123456789", Chr(K)) = 0 Then K = 0
End Sub
en fin de compte va poser pb.. exemple on peut pas taper 10
VB:
Private Sub TBNombre_Exit(ByVal C As MSForms.ReturnBoolean)
C = IIf(TBNombre = "", 1, 0)
End Sub
Private Sub TBNombre_keyPress(ByVal K As MSForms.ReturnInteger)
If Len(TBNombre) < 1 Then
If InStr("123456789", Chr(K)) = 0 Then K = 0
Else
If InStr("1234567890", Chr(K)) = 0 Then K = 0
End If
End Sub


en vous souhaitant une bonne Année 2🙂0🙂1🙂7🙂
 
Dernière édition:
- 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

Discussions similaires

Réponses
4
Affichages
250
Retour