'Dans une chaine de caractère, retourne la première série de chiffres consécutive 'Par exemple pour "Bol 234 5 raid 6" on retournera 234 Dim ChiffreDebut, ChiffreFin, MonChiffre UneLigneDeResultat = "Bol 234 5 raid 6" Wscript.echo "Chaine analysée : " & UneLigneDeResultat ChiffreDebut = 0 'Valeur par défaut ChiffreFin = 0 'Valeur par défaut Compteur = 1 'On se positionne au début de la ligne 'Analyse de la ligne de gauche à droite Do If IsNumeric(Mid(UneLigneDeResultat, Compteur, 1)) = True Then 'Si le caractère scruté est un chiffre ChiffreDebut = Compteur Exit Do Else 'Si on n'a pas encore trouvé de chiffre, on incrémente de 1 Compteur = Compteur + 1 End If Loop While (ChiffreDebut = 0 And (Compteur =< Len(UneLigneDeResultat))) ' (IsNumeric(Mid(UneLigneDeResultat, Compteur, 1)) = False) If ChiffreDebut > 0 Then 'Si on a trouvé le début d'un chiffre 'Wscript.echo ChiffreDebut ChiffreFin = ChiffreDebut 'Par défaut la fin du chiffre est un digit après le début Compteur = ChiffreDebut 'On se positionne au début du chiffre trouvé Do If IsNumeric(Mid(UneLigneDeResultat, Compteur, 1)) = False Then 'Si le caractère scruté n'est plus un chiffre ChiffreFin = Compteur - 1 Exit Do Else 'Si on a encore trouvé un chiffre, alors on avant au caractère suivant mais on note le résultat ChiffreFin = Compteur Compteur = Compteur + 1 End If Loop While (Compteur =< Len(UneLigneDeResultat)) 'Tant que l'on n'est pas arrivé à la fin de la ligne 'Wscript.echo ChiffreFin MonChiffre = Mid(UneLigneDeResultat, ChiffreDebut, (ChiffreFin - ChiffreDebut) + 1) Wscript.echo MonChiffre Else Wscript.echo "Pas de chiffre trouvé" End If