Sub Test_Suchmuster()
Set ws1 = ThisWorkbook.Sheets(1)
For i = 1 To 3
Set suche = ws1.Cells(i, 1).Find("?.?.?/?-?")
If Not suche Is Nothing Then
MsgBox suche.Find("?.?.?/?-?")
End If
Next i
End Sub
Wenn z. B. der Zellinhalt wie folgt lautet: "Wert 1.234.567/1-22 Artikel" dann findet das Makro korrekt die Zelle liefert aber als Inhalt den gesamten Zellinhalt zurück.
Ich bräuchte allerdings nur den Wert "1.234.567/1-22" aus der Zelle, der eben dem Suchmuster entspricht.
Gibt es dafür eine Lösung?
Vielen Dank
Armin
Function HoleMuster(s As String, sm As String) As String
Dim i As Integer, found As Boolean
For i = 1 To (Len(s) - Len(sm)) + 1
If Mid(s, i, Len(sm)) Like sm Then found = True: Exit For
Next i
If found Then
HoleMuster = Mid(s, i, Len(sm))
End If
End Function
Teste es hiermit:
Sub test()
Dim s$, sm$
s = "Wert 1.234.567/1-22 Artikel"
sm = "?.?.?/?-?"
MsgBox HoleMuster(s, sm)
End Sub
Gruß Matthias