Programmation VBA

Elise -  
blux Messages postés 2051 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,
dans un fichier Excel, j'ai fait des macros qui font des calculs à partir de données entrées dans des cellules.
Pb : si l'utilisateur du document se trompe et qu'il entre des données qui ne sont pas des chiffres, les macros bug.
Comment vérifier la nature d'une saisie?
(en l'occurence, comment vérifier que la donnée entrée est bien un chiffre, éventuellement à virgule)
Merci d'avance,
Elise
Configuration: Windows XP
Internet Explorer 6.0

2 réponses

  1. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    bonjour,
    plein de réponses sur les forum.
    explore IsNumeric. (tape dans le code IsNumeric, sélectionne le mot et tape F1 tu aurras le mode d'emploi)
    A+
    louis
    0
  2. xjl Messages postés 232 Statut Membre 183
     
    Salut,

    tu dois pouvoir tester la nature du contenu de la cellule renseignée:

    Private Sub Worksheet_Change(ByVal Target As Range)

    If IsNumeric(Target.Value) = True Then
    '
    ' Ta macro
    '
    Else
    MsgBox "Merci de rentrer une valeur numérique"
    Target.Select
    Target.Value = ""
    End If
    End Sub

    A insérer dans le code de la feuille de calcul concernée, et à adapter.... ;-)
    0
    1. Elise
       
      Merci beaucoup,
      c'est exactement la fonction qu'il me fallait!
      Elise
      0
    2. blux Messages postés 2051 Date d'inscription   Statut Modérateur Dernière intervention   3 455
       
      Salut,

      il y a aussi IsNull(), si l'utilisateur n'a rien rentré, ce qui évite aux tests de se planter...
      0