Office: (Office 2010) Namen (String) zerlegen

Helfe beim Thema Namen (String) zerlegen in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich habe mal wieder ein Problem bzw. eine Frage.Über Listen bekommen wir Namen von Mitarbeitern geliefert. Diese sollen mit den... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Forza SGD, 21. Oktober 2015.

  1. Namen (String) zerlegen


    Hallo zusammen,

    ich habe mal wieder ein Problem bzw. eine Frage.Über Listen bekommen wir Namen von Mitarbeitern geliefert. Diese sollen mit den Datenbankeinträgen abgeglichen werden. Leider werden keine Mitarbeiternummern mitgeliefert, so dass dies nur über den Namen möglich ist.

    In der Datenbank werden die Namen wie folgt abgelegt:

    - Mustermann,Max

    Leider sind den Personen, welche die Listen füllen und deren Phantasie kaum Grenzen gesetzt. Typische Fälle wären:

    - Mustermann, Max
    - Max Mustermann

    Ich versuche dies so gut wie es mir möglich zu korrigieren. Um den manuellen Aufwand zu minimieren. Für alle Fälle wird dies wohl kaum möglich sein. In meinem Code habe ich noch eine Prüfung auf etwaige Namenszusätze - aber bei gewissen Schreibweisen oder gar Doppelnamen wird es schwieriger.

    Code:
    Ich hab schon nach Inspiration bzw. Lösungen im Netz geschaut, allerdings mit bescheidenem Erfolg. Kennt einer von Euch vielleicht einen weiteren Ansatz bzw. einen besseren als mein Gewurste?

    Vielen lieben Dank schon einmal im Voraus!

    Gruß Andreas

    :)
     
    Forza SGD, 21. Oktober 2015
    #1
  2. FW
    FW
    ... naja, so wurstelig ist der Code doch gar nicht. Und wenn nur "," und " " als Trenner vorkommen können, dann hast'e doch alles, oder wo fehlt es genau?
     
  3. Hallo,
    der einfachste Weg das zu erkennen ob Komma vorliegt ist mit Split() und ubound() zu arbeiten. Hier eine Funktion die in ein Modul kopiert wird:
    Code:
    Dein Code reduziert sich dann erheblich.
    Code:
    Gruß Andreas
     
    avogt_at_home, 23. Oktober 2015
    #3
  4. Namen (String) zerlegen

    Hallo!

    Wenn Du einige Beispiele anführst was so vorkommen kann und was daraus werden soll,
    ist Dir leichter zu helfen, als wenn man den Code Step by Step ohne Ausgangsdaten nachvollziehen muß.
    Denn einmal entfernst Du Kommata, einmal fügst Du sie ein.
    Wann soll was geschehen.

    Wolfgang
     
    wb_3001, 23. Oktober 2015
    #4
  5. Vielen dank für die schnelle und zahlreiche Hilfe.

    @avogt_at_home

    Vielen Dank das Vorgehen ist ja anolog dem meinigen ... allerdings ist Dein Code wesentlich übersichtlicher.

    @FW und wb_3001

    Auch euch beiden besten Dank.

    Kommas entferne ich eigentlich keine. Es soll lediglich geprüft werden ob eine Trennung via Komma schon vorliegt. Ziel ist es, den vollen Namen als Nachname,Vorname darzustellen, wobei kein Leerzeichen nach dem Komma enthalten sein soll.

    Anbei mal ein paar typische Beispiele:

    Zielbild: Mustermann,Max

    - Mustermann, Max > wird geändert zu > Mustermann,Max
    - Mustermann, Max Theo > wird geändert zu > Mustermann,Max Theo
    - Max Mustermann > wird geändert zu > Mustermann,Max
    - Max Theo Mustermann > wird geändert zu > Mustermann,Max Theo
    - Max von Mustermann > wird geändert zu > von Mustermann,Max
    - Max Theo Mustermann Müller > Fehler

    Bei Doppelnamen beispielsweise habe ich keine Kennung wie dies sinnvoll zu prüfen wäre.

    Nochmals vielen dank für die Hilfe.
     
    Forza SGD, 23. Oktober 2015
    #5
  6. FW
    FW
    ... also sind in der Tat nur "," und " " als Trenner berücksichtigt. Dann hast Du Deinen Job doch gut gemacht!?
    3 durch " " getrennte Namen werden also als Doppel-Vornamen interpretiert und ein "von" wird als Nachname-Zusatz interpretiert?
    Für den letzten Fall wird es wohl auch keine sinnvolle Interpretation geben...
     
  7. Hallo FW,

    Ich bin davon ausgegangen, dass wenn kein Komma vorhanden ist, der volle Name als Vorname Nachname geliefert wird. Da mir nicht sinnvolles eingefallen ist, wie man entscheiden könnte ob es sich um zwei Vornamen bzw. einen Doppelnamen handelt, erfolgt die Trennung auf Grundlage des letzten Leerzeichens.

    Wenn dies falsch interpretiert wurde, ergibt der Vergleich so oder so einen Fehler und die Liste wird zur manuellen Nachbereitung vorgelegt. In 90 % der Fälle sollte diese Behandlung der Namen zum gewünschten Ergebnis führen.Bei den Zusätzen verhält es sich wie folgt. Ich habe mir mal angeschaut wie ein "von und zu" im Active Directory abgelegt wird. Dies entspricht dem beschriebenen Fall Vorname: Max / Nachname: von Mustermann.Wie gesagt, dies soll eine Erleichterung darstellen. Eine 100% - Lösung wäre wunderbar, doch scheint die nicht möglich. Wenn sich der Aufwand zur manuellen Nachbereitung erheblich reduzieren lässt, soll mich dies schon glücklich machen *biggrin.gif*

    Wenn jemand noch eine Idee haben sollte bzw. Optimierungsvorschläge ... immer her damit.

    Nochmals besten Dank FW, auch für die netten Worte.
     
    Forza SGD, 23. Oktober 2015
    #7
  8. Namen (String) zerlegen

    Achso, ich hatte noch eine andere Idee. Haltet ihr es für sinnvoll die Namen zu splitten und die Einzelnen Einträge des Arrays gegeneinander zu vergleichen?
     
    Forza SGD, 23. Oktober 2015
    #8
  9. Bei Verwendung von Zusätzen, sofern diese gemeinsam mit Vor- und Zunamen in einem Feld dargestellt werden, habe ich die Form
    Code:
    als günstig für eine Sortierung empfunden.
     
  10. Hallo Maxel,

    vielen Dank für deine Hilfe. Ich bin auch völlig bei Dir, doch muss ich mich an die Vorgaben der Referenz-DB halten, soll mein Vergleich funktionieren. Dort ist der Namenzusatz leider Teil des Nachnamens.
     
    Forza SGD, 23. Oktober 2015
    #10
  11. Ob sinnvoll oder nicht:

    Karl Heinrich
    Heinrich Karl

    Jedes Wort kann Vor- und Zuname sein.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  12. Der zu betrachtende Personenkreis umfasst ca. 250 Menschen. Die Wahrscheinlichkeit das so etwas vorkommen könnte ist zwar relativ gering, doch müsste solch ein Fall lediglich 1 mal auftreten um arge Probleme zu bereiten.

    Danke Maxel
     
    Forza SGD, 23. Oktober 2015
    #12
  13. Namen (String) zerlegen

    Wenn man Vornamen und Nachnamen (und Titel) in getrennten Tabellenfeldern ablegen würde, wäre es insofern schon mal einfacher als dass man wüsste, was denn nun der vollständige Nachname ist usw.

    Auch beim Ausfüllen von Listen und Formularen ist es durchaus üblich, Nach- und Vornamen getrennt abzufragen, so dass keine allzu hohe intellektuelle Leistung von den Eingabepersonen abgefordert wird. Schon mal ausprobiert?
     
  14. Hallo ebs,

    Dies ist auch bei uns so üblich ... in den Objekten, welche unsere Partner führen sind die namen in diversen Variationen abgelegt. Leider kann ich von der zu verwendenden Referenztabelle nicht die Brücke zu dem beschriebenen partner-Objekt schlagen, da mir die Ident. Nummer fehlt.

    Die Namen sind in der Referenztabelle allerdings nach einem Schema - F abgelegt. So könnte ich diese definitiv nach Vor- und Nachnamen trennen.

    Noch nicht ... werde ich aber gleich mal angehen. Danke dafür.

    Auf die Listen habe ich keinen Einfluss - weder auf deren Erstellung, Design oder Füllung. D.h. es nur. "Jetzt mach!"

    nochmals besten Dank ebs !!!
     
    Forza SGD, 23. Oktober 2015
    #14
  15. Hallo,

    nur eine Idee... noch lange nicht fertig gedacht... aber mit der Abfrage funkt es schon einigermaßen gut!

    So, nur kurz zu meiner Überlegung...
    da deine Daten wie "Mustermann,Max" in deiner DB-Tabelle schon vorgegeben sind...(das habe ich mal angenommen)
    kann man ja alle Vornamen herausfiltern.
    Weiters kann man den Vornamen aus dem gesamten zu überprüfenden Namen ausgrenzen...
    danach das Komma weg und danach das Leerzeichen weg... bleibt der Nachname über.
    Falls da noch etwas zu herausfiltern gibt... muss man eben danach einrichten.

    Natürlich muss das alles in einem VBA-Code ablaufen und immer der nächste zu überprüfende Name gewählt werden.
    Im Moment habe ich nur mal Max Mustermann angenommen, also Top 1
    Das muss dann natürlich abgeändert werden... was in VBA ja kein Problem sein wird.
     
    Kyron9000, 23. Oktober 2015
    #15
Thema:

Namen (String) zerlegen

Die Seite wird geladen...
  1. Namen (String) zerlegen - Similar Threads - Namen String zerlegen

  2. Name der Datei durch Excel geändert

    in Microsoft Excel Hilfe
    Name der Datei durch Excel geändert: Hallo und guten Abend, Die Datei wird mittels Button (VBA) zwischen gesichert. Das Makro sichert zuvor die Datei und erstellt zus. eine Sicherungsdatei mit der Erweiterung Beispiel-"Sich"....
  3. Namen ausgeben mit größtem Wert auf einem anderen Blatt

    in Microsoft Excel Hilfe
    Namen ausgeben mit größtem Wert auf einem anderen Blatt: Hallo Leute, könnt ihr bei der Aufgabe helfen, ich sitze schon länger dran und mir werden die ganze Zeit nur Fehler angezeigt. Ich habe auf einem Tabellen Blatt zwei Spalten mit Namen der...
  4. Namen Vergleichen

    in Microsoft Excel Hilfe
    Namen Vergleichen: Hallo zusammen, ich habe folgendes Problem: - Spalte A Vornamen und Spalte B Nachnamen - Spalte C Vornamen AR und Spalte D Nachnamen AR - die Spalten bzw. Listen sind unterschiedlich lang Jetzt...
  5. Formel mit INDEX, MATCH und MAX gibt Fehler #NAME!

    in Microsoft Excel Hilfe
    Formel mit INDEX, MATCH und MAX gibt Fehler #NAME!: Hallo zusammen, ich habe mit Hilfe von Copliot eine Formel gebaut, die 2 Werte aus einer Tabelle 1 in einer Tabelle 2 prüfen soll und wenn die Konstellation vorkommt, soll das größte Wert dieser...
  6. Eindeutige Namen - Bedingte Formatierung

    in Microsoft Excel Hilfe
    Eindeutige Namen - Bedingte Formatierung: Hallo zusammen, Es stellt sich folgendes Problem: Ich habe Maßnahmenpläne mit vielen verschiedenen Verantwortlichen, Meldern, etc. Ich möchte alle zellen einfärben in denen der Name "Grün"...
  7. Überprüfen ob Tabellenballt mit Namen aus Zelle vorhanden ist

    in Microsoft Excel Hilfe
    Überprüfen ob Tabellenballt mit Namen aus Zelle vorhanden ist: Da ich VBA noch nicht so lange benutze komme ich doch gerade an meine Grenzen. Ich möchte überprüfen ob es ein Bestimmtes Tabellenblatt gibt im Tabellenblatt "GK" in P1 steht der zu überprüfende...
  8. Namen von Mietparteien im Müllkalender

    in Microsoft Excel Hilfe
    Namen von Mietparteien im Müllkalender: Hallo, schön bei euch zu sein. Auch wenn man es nicht glaubt habe ich schon als nicht Mitglied euer Forum so weit wie es ging durstöbert und nicht gefunden was ich gesucht habe. Ich mache gerade...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden