VisualBasic MAC Adresse von 00AA11BB22CC nach 00-AA-11-BB-22-CC formatieren

Sylar

Captain
Registriert
März 2011
Beiträge
3.078
Hallo!

Ich hab folgendes Problem. Ich bekomme eine MAC-Adresse in der Form von 00AA11BB22CC rein. Jetzt möchte ich aber es Ordentlich formatieren in 00-AA-11-BB-22-CC

Hätte mal einen kleinen Anfang, aber leider kann ich es noch nicht vollenden
Code:
Function FormatMAC(MACAddress As String, Teiler As String)
    Dim HelpArr As Variant
    Dim HelpElement As Variant
    Dim HelpStr As Variant
    Dim X As Integer
    
    For X = 1 To 7
    HelpArr = Left(MACAddress, 2)
    HelpStr = Left(Len(MACAddress), 2)
    HelpElement = HelpElement & HelpArr & Teiler
    Next
End Function

Wäre natürlich über eine bessere Lösung erfreut.
 
ich mach das immer so: (nicht schön, funktioniert aber tadellos)
Code:
Function FormatMAC(MACAddress As String, Teiler As String)
   if len(MACAddress) = 12 then 
      MACAddress = mid(MACAddress ,1,2) & Teiler & _
                   mid(MACAddress ,3,2) & Teiler & _
                   mid(MACAddress ,5,2) & Teiler & _
                   mid(MACAddress ,7,2) & Teiler & _
                   mid(MACAddress ,9,2) & Teiler & _
                   mid(MACAddress ,11,2)
   else
      MACAddress = "Fehlerhafte MAC Adresse"
   end if
   FormatMAC = MACAddress 
end Function
 
Zuletzt bearbeitet:
danke! Funktioniert primar! Primitiv, aber es funktioniert^^

Nur einen kleines Problem hätte ich noch. Ich habe 2 Radio_Buttons. Diese kann ich dann umstellen zwischen "-" und ":" bei MAC Adressen. Wenn ich jetzt eine MAC-Adresse einlese, und das Programm erkennt es als MAC. Und ich dann das Trennzeichen wechseln möchte, liest er wieder von der Eingabe Maske ein. und überschreibt somit die alte MAC-Adresse.

Ich möchte aber erst die alte MAC-Adresse überschreiben, wenn es eine richtige MAC-Adresse reinkommt oder wenn die Seriennummer eingelesen wurde.

Im Anhang hab ich mal mein Projekt angefügt, aber nocht nicht ganz fertig..
 

Anhänge

Die Kurzversion für VB6-Profis ;)...

Code:
format("aabbccddeeff","@@\-@@\-@@\-@@\-@@\-@@")
 
Zuletzt bearbeitet:
zum ändern des Zeichen kannst replace nehmen.
Macadresse = replace(Macadresse, mid(macadresse,3,1), Teiler)
 
Zuletzt bearbeitet:
Zurück
Oben