Tester si numérique jusqu'à trouver
Résolu
LeDebutantVBAFou
-
LeDebutantVBAFou -
LeDebutantVBAFou -
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 à
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!!
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
-
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
-
Bonjour
Essaies ceciDim 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 -