Registriert seit: 25.09.2018
Version(en): 2016
Hallo,
ich will bestimmte Namen in einer Matrix suchen.
Frage: Manchmal unterscheiden sich die Namen in der Schreibweise. Statt Peter Müller, steht in der Matrix Peter P. Müller. Ich kann auch nur den Nachnamen oder nur Vornamen nicht nehme,da es mehrere gleiche Vor- oder Nachnamen gibt.
Was jemand weiter?
Registriert seit: 10.04.2014
Version(en): Microsoft 365, mtl. Kanal
Hi Chrissy,
ist Peter Müller in deinem Beispiel mit Peter P. Müller identisch oder handelt es sich um zwei verschiedene Personen?
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Registriert seit: 25.09.2018
Version(en): 2016
Registriert seit: 06.12.2015
Version(en): 2016
Hallo,
solche "unsscharfen" Suchen gehören zu den sehr komplexen Fragen, da müßtest Du die Frage schon mit mehr als einem Beispiel belegen.
Sofern es nur den Fall mit einem abgekürzten 2. Vornamen geben sollte, wäre es relativ einfach.
mfg
(aber wenn Du dir keine Mühe gibst, warum sollte dies ein potentieller Antworter tun?)
Registriert seit: 12.04.2014
Version(en): Office 365
Wir sehen uns!
... Detlef
Meine Beiträge können Ironie oder Sarkasmus enthalten.
Folgende(r) 1 Nutzer sagt Danke an shift-del für diesen Beitrag:1 Nutzer sagt Danke an shift-del für diesen Beitrag 28
• chrissy
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
27.05.2019, 21:11
(Dieser Beitrag wurde zuletzt bearbeitet: 27.05.2019, 21:12 von MisterBurns.)
@shift-del: Geiler Scheiß! :15: :05:
Schöne Grüße
Berni
Registriert seit: 06.12.2015
Version(en): 2016
28.05.2019, 10:53
(Dieser Beitrag wurde zuletzt bearbeitet: 28.05.2019, 10:53 von Fennek.)
gibt es auch andere Varianten?
Code:
Sub Vorbereitung()
Nm = Array("Peter Müller", "Peter P.Müller", "Dr.Peter Müller", _
"Prof.Peter Müller", "Prof.Dr.Peter Müller", _
"Prof.Dr.Peter P.Müller")
Range("A1").Resize(UBound(Nm) + 1) = Application.Transpose(Nm)
End Sub
Function Namen_einfach(ByVal rng) As String
If InStr(1, rng, ".") > 0 Then
Tx = Split(rng)
For i = 0 To UBound(Tx)
If InStr(1, Tx(i), ".") > 0 Then Tx(i) = vbNullString
Next i
rng = Join(Tx, " ")
End If
Namen_einfach = WorksheetFunction.Trim(rng)
End Function