Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Funktion zur prüfung von IP Adressen

Funktion zur prüfung von IP Adressen
23.02.2007 15:58:19
IP
Hallo,
gibt es irgendwo eine Funktion zur Überprüfung eines Zellinhalts auf Plausibilität der IP-Adresse?
Beispiel: Zelle A1 = 198.168.134.33
Achtung: das letzte Segment hat nur 2 Ziffern; dieses ist korrekt.
Danke für Hilfe,
Heinz
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Funktion zur prüfung von IP Adressen
IP
Hallo
Wenn dir die Prüng auf den "." als dritt letzte Stelle reicht, versuche es mal so:
Tabelle1

 AB
1198.168.134.33WAHR

Formeln der Tabelle
ZelleFormel
B1=LINKS(RECHTS(A1;3);1)="."


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
ransi
ransi
Anzeige
AW: Funktion zur prüfung von IP Adressen
23.02.2007 16:14:00
IP
Hallo Danke für Hilfe aber:
ich muß prüfen ob 3 Punkte vorhanden sind und ob jede Zahl zwischen den Punkten im Bereich 0 - 255 liegt. Die Werte zwischen den Punkten können 1 stellig, 2 stellig oder 3 stellig sein.
Danke!
AW: Funktion zur prüfung von IP Adressen
IP
HAllo
Füge diesen Code mal in ein Modul ein:
Option Explicit


Public Function Macht_IP_Sinn(zelle) As Boolean
    Dim str
    Dim i As Integer
    Macht_IP_Sinn = True
    str = Split(zelle.Text, ".")
    For i = 0 To UBound(str)
        Select Case str(i)
            Case 0 To 255
            Case Else
                Macht_IP_Sinn = False
                Exit Function
        End Select
    Next
End Function

Der Aufruf in einer Tabelle geht dann so:
Tabelle2

 AB
1191.168.134.33WAHR

Formeln der Tabelle
ZelleFormel
B1=Macht_IP_Sinn(A1)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
teste selber mal ein wenig. Vielleicht fehlt noch was ...
ransi
Anzeige
AW: Funktion zur prüfung von IP Adressen
23.02.2007 16:40:31
IP
Vielen Dank! Klappt
Bist du sicher...
23.02.2007 20:02:52
Ramses
Hallo
Deine Aussage
"...Vielen Dank! Klappt...."
wage ich doch ernsthaft zu bezweifeln :-)
Tabelle1

 AB
1255.255.255.255WAHR
20.1.2.3WAHR
3255.0.0.0WAHR
4  

Formeln der Tabelle
ZelleFormel
B1=macht_ip_sinn(A1)
B2=macht_ip_sinn(A2)
B3=macht_ip_sinn(A3)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
In der Funktion ist keinerlei Logikprüfung drin
Gruss Rainer
Anzeige
BTW...
23.02.2007 16:52:53
{Boris}
Hi Ransi,
...die UDF liefert aber auch wahr für 193.152.111.222.54.22.190 - also für ein Konstrukt mit mehr (oder auch weniger) als 3 Punkten.
Grüße Boris
AW: BTW...
ransi
HAllo
Boris hat Recht:
Hier ist das Ganze um eine If-Schleife ergänzt.
Option Explicit

Public Function Macht_IP_Sinn(zelle) As Boolean
    Dim str
    Dim i As Integer
    Macht_IP_Sinn = True
    str = Split(zelle.Text, ".")
    If UBound(str) <> 3 Then
        Macht_IP_Sinn = False
        Exit Function
    End If
    For i = 0 To UBound(str)
        Select Case str(i)
            Case 0 To 255
            Case Else
                Macht_IP_Sinn = False
                Exit Function
        End Select
    Next
End Function


Vieleicht findet ja noch jemand einen Fehler beim Testen.
ransi
Anzeige
Alternative ohne VBA
23.02.2007 16:49:08
{Boris}
Hi,
wenn Deine (vermeintlichen) IP-Adressen in Spalte A ab A1 stehen, dann teil sie mit Daten-Text in Spalten-Trennzeichen: . (Punkt) erstmal auf die Spalten B bis E auf.
Die Prüfung erfolgt dann mit dieser kleinen Arrayformel:
{=UND(B1:E1>=0;B1:E1 Ist im Endeffekt nur die Excelumsetzung (zumindest sinngemäß) des VBA-Codes von Ransi.
Grüße Boris
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

IP-Adressen in Excel überprüfen und formatieren


Schritt-für-Schritt-Anleitung

Um eine IP-Adresse in Excel zu überprüfen, kannst du eine benutzerdefinierte Funktion (UDF) in VBA erstellen. Hier ist eine Schritt-für-Schritt-Anleitung, wie du vorgehen kannst:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke auf „Einfügen“ > „Modul“.

  3. Kopiere den folgenden Code in das Modul:

    Option Explicit
    
    Public Function Macht_IP_Sinn(zelle) As Boolean
       Dim str
       Dim i As Integer
       Macht_IP_Sinn = True
       str = Split(zelle.Text, ".")
       If UBound(str) <> 3 Then
           Macht_IP_Sinn = False
           Exit Function
       End If
       For i = 0 To UBound(str)
           Select Case str(i)
               Case 0 To 255
               Case Else
                   Macht_IP_Sinn = False
                   Exit Function
           End Select
       Next
    End Function
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Verwende die Funktion in einer Zelle: Gib =Macht_IP_Sinn(A1) ein, wobei A1 die Zelle mit der IP-Adresse ist, die du überprüfen möchtest.


Häufige Fehler und Lösungen

  • Fehler: "Funktion nicht gefunden"
    Stelle sicher, dass die VBA-Funktion korrekt in einem Modul eingefügt wurde und der Code keine Syntaxfehler enthält.

  • Fehler: Falsche Rückgabe für ungültige IPs
    Überprüfe, ob die IP-Adresse genau drei Punkte hat und jede Zahl zwischen 0 und 255 liegt. Der UDF-Code prüft dies, aber eine fehlerhafte Eingabe könnte dennoch falsche Ergebnisse liefern.


Alternative Methoden

Wenn du keine VBA-Funktion verwenden möchtest, kannst du die IP-Adresse auch mit Excel-Formeln überprüfen. Hier ist eine einfache Methode:

  1. Teile die IP-Adresse auf: Verwende die Funktion =TEXTSPLIT(A1;"."), um die IP-Adresse in ihre Bestandteile zu zerlegen (diese Funktion ist in neueren Excel-Versionen verfügbar).
  2. Prüfe die Werte: Verwende eine Array-Formel, um sicherzustellen, dass alle Teile zwischen 0 und 255 liegen:

    =UND(B1:E1 >= 0, B1:E1 <= 255)

Diese Methode ist eine nützliche Excel-Prüfung, um sicherzustellen, dass die IP-Adresse korrekt formatiert ist.


Praktische Beispiele

A B
192.168.1.1 =Macht_IP_Sinn(A1)
256.100.50.25 =Macht_IP_Sinn(A2)
10.0.0.256 =Macht_IP_Sinn(A3)
172.16.254.1 =Macht_IP_Sinn(A4)

In der Tabelle kannst du sehen, wie die Funktion für verschiedene IP-Adressen funktioniert. Die Zellen in Spalte B zeigen WAHR oder FALSCH an, je nachdem, ob die IP-Adresse gültig ist oder nicht.


Tipps für Profis

  • IP-Adressen formatieren: Um IP-Adressen in einem einheitlichen Format darzustellen, kannst du die Funktion =TEXT(A1; "000") verwenden, um sicherzustellen, dass alle Teile dreistellig sind.
  • Datenvalidierung: Nutze die Datenvalidierungsfunktion in Excel, um sicherzustellen, dass nur gültige IP-Adressen eingegeben werden können.
  • Schnelle Überprüfung: Verwende die Funktion =WENN(Macht_IP_Sinn(A1); "Gültig"; "Ungültig") für eine klare Rückmeldung.

FAQ: Häufige Fragen

1. Wie kann ich IP-Adressen automatisch in Excel formatieren?
Verwende die Funktion TEXT oder erstelle eine Formatierungsregel, um sicherzustellen, dass alle IP-Adressen korrekt angezeigt werden.

2. Kann ich auch mehrere IP-Adressen gleichzeitig überprüfen?
Ja, du kannst die Funktion in einer Spalte nach unten ziehen, um mehrere IP-Adressen in einer Liste zu überprüfen.

3. Welche Excel-Version benötige ich für die Funktionen?
Die VBA-Funktion kann in allen Versionen von Excel verwendet werden, während einige Funktionen wie TEXTSPLIT in Excel 365 und Excel 2021 verfügbar sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige