# Find numeric part of a text field

Hi,
I have the house numbers coming from the MSAccess text field.
(The database can be oracle, anyway)
In my vb6 code I have to assign the next house no.
A sample may be
100
200-A
2-F
40

I want to see the numeric part of each of these and find the highest and add 1
The requirment is to find the next house number  to propose .(In this case it should be 201)

###### Who is Participating?

Commented:
Hi!

This is a quick and simple function that I made for you.

Private Sub Command1_Click()
MsgBox finnumber("12 - A")
End Sub

Private Function finnumber(s As String) As String
Dim mychr As String * 1, myasc As Integer
For i = 1 To Len(s)
mychr = Mid\$(s, i, 1)
myasc = Asc(mychr)
Select Case myasc
Case 48 To 57
finnumber = finnumber + mychr
Case Else
End Select
Next i
End Function

Matti
0

Commented:
hI sqs1970
This link has a few options on how to locate the numbers only:
Using the above you should be able to convert the variables to an array of numbers and find the max.
Cheers
Stu
0

Commented:
i'd make a few amendments....
1/to handle addresses like 24A 22nd Street          you only want the 24.
2/ return a number.  an int would be ok usually but there are a couple of 33000 numbers around.

Dim mychr As String * 1, sTemp as string, i as integer
For i = 1 To Len((sAddress)
mychr = Mid\$(s, i, 1)

Select Case Asc(mychr)
Case 48 To 57
sTemp = sTemp & mychr
Case Else
if sTemp <> "" then
'so stop looking
Exit For
end if
End Select
Next i

End Function
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.