Private Sub textNumerique_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 8 Or KeyCode = 46 Then Exit Sub 'touche Delete ou Suppr
If KeyCode = 37 Or KeyCode = 38 Or KeyCode = 39 Or KeyCode = 40 Then Exit Sub 'touches de navigation
If KeyCode = 13 Then Exit Sub 'touche Entrée
If KeyCode = 188 Then KeyCode = 110 'remplacement de la virgule par un point
If KeyCode = 110 Then 'saisie du point
If InStr(1, textNumerique, ".") <> 0 Then KeyCode = 0 'il y a déjà un point dans le nombre
End If
If Not (KeyCode >= 96 And KeyCode <= 106 Or KeyCode = 110) Then 'si on tape autre chose qu'un chiffre
KeyCode = 0
End If
End Sub