PDA

Vollständige Version anzeigen : IP-Adressen sortieren


Dany
30.08.2001, 08:53
Hallo miteinander,
Ich bin auf der suche nach einer Fomel die das sortieren von IP-Nummern bewirkt. Das heisst: 192.168.0.50 ist gleich wie 192.168.0.050. Ich habe so as gefunden doch funktionierts nicht ganz richtig:

Function IPSort(IPAdress As String) As Single
'*******************************************
' Sortiert die IP-Adressen in Abhängigkeit der Wertigkeit
' © by harald.brey@fen.baynet.de
' Anfrage in aus news://news.microsoft.public.de.access
' 5.März 1999
'*******************************************
Dim pos As Integer
Dim start As Integer
Dim Zahl As Byte
Dim sort As Single
Dim i As Long
start = 1
For i = 3 To 0 Step -1
pos = InStr(start, IPAdress, ".")
If pos = 0 Then
Zahl = Mid(IPAdress, start, Len(IPAdress))
sort = CLng(Zahl) * 256 ^ i + sort
Else
Zahl = Mid(IPAdress, start, pos - start)
sort = CLng(Zahl) * 256 ^ i + sort
start = pos + 1
End If
Next i
IPSort = sort
End Function

Habt Ihr eine Idee?
Gruss Dany

WalterS
30.08.2001, 20:01
Hallo Dany!

Hier hast du eine Funktion, die dir jede IP in eine Zeichenkette von 15 Zeichen umwandelt in dem "fehlende Nullen" eingefügt werden.

Public Function ip_auffüllen(ip As String) As String

Dim teil As Byte

For teil = 1 To 3
ip_auffüllen = ip_auffüllen & Format(Val(ip), "000") & "."
ip = Mid(ip, InStr(ip, ".") + 1)
Next teil
ip_auffüllen = ip_auffüllen & Format(Val(ip), "000")
End Function