Tester si numérique jusqu'à trouver

Résolu
Bonjour,

Sur un tableau en colonne A figurent "les numéros de référence".

Le tableau se rempli via un Userform. Le numéro de référence s'indique automatiquement grâce à

Dim L1 As Integer 'la dernière ligne
Dim P1 As Integer 'La valeur de la dernière REF
L1 = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row 'la dernière ligne
P1 = ActiveSheet.Range("A" & L1) 'La valeur de la dernière REF
TextBox6 = P1 + 1 'Le numéro de la nouvelle ligne


Mon problème est que maintenant la valeur de REF peut ne pas être numérique.
J'ai besoin de tester si P1 est numérique, si ce n'est pas le cas tester la valeur du dessus, et cela jusqu'à trouver une valeur numérique pour que finalement

TextBox6 = "la dernière valeur numérique" +1

J'espère avoir été assez compréhensible dans mon problème!!!
Merci pour votree aide!!

3 réponses

  1. Contributeur
    Bonjour,

    Sans boucle.
    Le dernier nombre de la colonne :
    Application.Index(Columns(1), Application.Match(1E+300, Columns(1), 1)).Value

    applicable à une plage plus restreinte si besoin.

    Le plus élevé de la colonne :
    Application.Max(Columns(1))

    eric

    1
    1. Bonjour

      Essaies ceci
      Dim L1 As Long 'la dernière ligne
      Dim P1  'La valeur de la dernière REF
      Dim LiDeb As Long
      LiDeb = 3
      L1 = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row 'la dernière ligne
      P1 = ActiveSheet.Range("A" & L1) 'La valeur de la dernière REF
      While Not IsNumeric(P1) And L1 > LiDeb
        L1 = L1 - 1
        P1 = ActiveSheet.Range("A" & L1)
      Wend
      TextBox6 = P1 + 1 'Le numéro de la nouvelle ligne

      Cdlmnt
      0
      1. On demande 1 solution, on en a 2!!!
        Un grand merci à vous!
        0