Dim arr             As Variant
    Dim v               As Variant
    Dim Zeichenkette    As String
    
    '*** eine repräsentative Variable deines Beispiels
    Zeichenkette = "2727K76, 877H626, 12B13, B1, xxxxxx, yyyyyy, zzzzzz"
    
    '*** splitte Zeichnekette anhand KOMMA und LEERZEICHEN in ein 1-dimensionales Array
    arr = Split(Zeichenkette, ", ")
    
    '*** durchsuche das 1D-Array und gib bei Fund Position zurück
    v = Application.Match("B1", arr, 0)                         '*** Wenn kein Fund, dann bekommt v einen Fehlerwert zugewiesen
    
    '*** Wenn kein Fehlerwert, dann haben wir die Position von "B1" im Array
    If Not IsError(v) Then
        MsgBox arr(v)   '*** da die Variable v nun die Positionsnummer bereithält, könnte man so auf den Wert im Array zugreifen
    End If
  
Hinweis: 
Wenn B1 doppelt vorkommen könnte, dann die Suche schleifen oder über .Find. 
Noch besser, über SQL. Aber das wäre unnötig hier. 
     |