Extrair parte numérica da corda
A função a seguir extrairá a parte numérica de uma string:
Função 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 = "" Para 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 Função Final
Então, por exemplo:
Extract_Number_from_Text (“uuigguo 995”) retornará 995
Extract_Number_from_Text (“uuigguo 0,12995”) retornará 0,12995
Extract_Number_from_Text (“yu00.000456”) retornará 0,000456
= Extract_Number_from_Text (“juii-0009.9987iihiii”) retornará -0.9987
Se não houver nenhum número na frase, um zero será retornado.
Para baixar o arquivo .XLSM deste artigo, clique aqui.