Extraire le numéro de la chaîne - Exemples de code VBA

Extraire la partie numérique de la chaîne

La fonction suivante extraira la partie numérique d'une chaîne :

Function Extract_Number_from_Text(Phrase As String) As Double Dim Length_of_String As Integer Dim Current_Pos As Integer Dim Temp As String Length_of_String = Len(Phrase) Temp = "" For Current_Pos = 1 To Length_of_String If (Mid(Phrase, Current_Pos, 1) = "- ") Then Temp = Temp & Mid(Phrase, Current_Pos, 1) End If If (Mid(Phrase, Current_Pos, 1) = ".") Then Temp = Temp & Mid(Phrase, Current_Pos, 1) End If If (IsNumeric (Mid(Phrase, Current_Pos, 1))) = True Then Temp = Temp & Mid(Phrase, Current_Pos, 1) End If Next Current_Pos If Len(Temp) = 0 Then Extract_Number_from_Text = 0 Else Extract_Number_from_Text = CDbl(Temp) End If Fonction de fin

Alors par exemple :

Extract_Number_from_Text ("uuigguo 995") renverra 995
Extract_Number_from_Text ("uuigguo 0,12995") renverra 0,12995
Extract_Number_from_Text ("yu00.000456") renverra 0,000456
=Extract_Number_from_Text("juii-0009.9987iihiii") renverra -0,9987
S'il n'y a pas de nombre dans la phrase, un zéro est renvoyé.

Pour télécharger le fichier .XLSM de cet article, cliquez ici.

wave wave wave wave wave