View Single Post
  #10   Report Post  
Posted to microsoft.public.excel.programming
JE McGimpsey JE McGimpsey is offline
external usenet poster
 
Posts: 4,624
Default Extract 5 digit number from string

This isn't optimized at all, but it returns the values you want:

Public Function Extract5(sInput As String) As String
Dim sTemp As String

Extract5 = vbNullString
sInput = Trim(sInput)
If sInput Like "*#####*" Then
Do While Len(sInput) 0
Debug.Print sInput, sTemp
If Left(sInput, 1) Like "[0-9,.]" Then
sTemp = sTemp & Left(sInput, 1)
ElseIf sTemp Like "#####" Then
Exit Do
Else
sTemp = vbNullString
End If
sInput = Mid(sInput, 2)
Loop
If Len(sTemp) = 5 Then Extract5 = sTemp
End If
End Function


In article .com,
wrote:

Thanks for your help guy's!
I will show you some results I would like to have in the list. I did
not get the right results alreayd with your help, so I am probably not
so clear.This is the output I would like to have from the following
list:

36548 dfg hdh 515748 returns 36548
fgj 26547 152475 12-11-2005 returns 26547
12345 returns 12345
dfgdg 21212 .21 dfgdg . - dfgdfg returns 21212
blablabla returns none
365485 12345 returns 12345
12254 returns 12254
1,2589 blabla -12345 returns 12345
1.2589 blabla -12345 returns 12345
1.2547 blabla 12 returns none
123456 blaat 78910 returns 78910
123456 blaat 78910blaat returns 78910
78910 blaat 123456 returns 78910
78910blaat blaat 123456 returns 78910
1.23456 blaat 78910 returns 78910
1,23456 blaat 78910blaat returns 78910
78910-blaat 123456 returns 78910
78910**blaat blaat 123456 returns 78910