Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

Office 365: Access Grundkurs

Namen zerlegen

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Auch mit Texten lassen sich Werte "berechnen", wie in diesem Video anhand der Zerlegung eines kompletten Namens in Vor- und Nachnamen gezeigt wird.

Transkript

Anhand dieser Testtabelle lässt sich auch sehr schön zeigen, dass Access nicht nur mit Zahlen oder Datumswerten, die ja spezielle Zahlen sind, rechnen kann, sondern auch mit Texten. Ich nenne das weiterhin "rechnen" auch wenn es um Texte geht. Ich möchte diese Texte nämlich hier zerlegen in Vor- und Nachname. Dazu schließe ich diese Testtabelle und erstelle wie immer eine neue Abfrage, die darauf basiert und dieses test_Name erstmal anzeigt. Und ich möchte an dieser Stelle erstmal den Vornamen anzeigen. Dazu kann ich mit Steuerung+F2 den Ausdrucksgenerator öffnen und hier die Formel schreiben. Zuerst mal muss ich einen neuen Feldnamen schreiben, also "Vorname:". Jetzt brauche ich eine Funktion, die mir von der gesamten Zeichenkette die linken Zeichen zurückgibt und wenn ich nicht weiß wie die heißt, gucke ich mal hier bei den integrierten Funktionen nach, und zwar insbesondere bei den Textfunktionen und wie es der Zufall will, heißt die Funktion auch "Links". Die Unterschiede mit und ohne Dollarzeichen können Sie völlig ignorieren, das sind historische Gründe. In der BASIC-Anfangszeit waren Funktionen mit dem Rückgabedatentyp "String" immer mit einem Dollarzeichen versehen. Also, mit einem Doppelklick nehme ich die Linksfunktion, dieser Ausdruck hier ist fehlerhaft, der kann weg und die Zeichenfolge, die ich untersuchen will, ein Klick hier und entfernen, die kommt aus diesem Feld hier. Also ich kann anfangen zu schreiben, wenn es jetzt den Feldnamen nicht anzeigt, dann müsste ich eigentlich davor "tblTest" schreiben, aber das ist hier schneller geschrieben, also "test_Name", der Feldname, der untersucht werden soll, und hier gebe ich die Länge vor, ich sage mal einfach 6, Lorenz hat 6 Zeichen, dann wird das wenigstens funktionieren und nach dem OK und hier dem Syntax Check mit Return kann ich das Ganze mal ansehen. Das sieht schon ganz ordentlich aus, Sie sehen, aus der Zeichenkette werden die ersten sechs Zeichen rausgeholt und für die meisten klappt das ganz ordentlich, wobei hier auch ein Leerzeichen drin steckt, was man so erstmal nicht bemerkt, aber das sieht leidlich aus. Es ist nicht perfekt, denn tatsächlich ist ja die Länge des Vornamens sehr unterschiedlich. Also muss ich erstmal rausbekommen, wo der Vorname eigentlich liegt und das heißt, ich werde mir hier ein neues Feld dazwischen schieben. Ich mach das jetzt mal mit Shift+F2. Da ist es ein klein bisschen größer zu sehen und ich werde diese Variable, hätte ich jetzt beinahe gesagt, also diesen neuen Feldnamen, aber es verhält sich letzten Endes wie eine Variable, einfach "WoLeer" nennen. Soll bedeuten, wo ist denn eigentlich das Leerzeichenm, ich kriege gleich eine Position zurück. Und zwar von einer Funktion die heißt "InStr". In einem String etwas suchen, trotzdem schreibt die sich so kurz: ''InStr('' und die will zuerst wissen, wo soll ich suchen. Das ist wie eben auch "test_Name", der Feldname. Der kriegt nachher seine eckigen Klammern die müssen sie aber nicht selber setzen, das merkt der Syntax Check. Aals zweites will sie wissen, was suche ich denn da drin. Parameter werden ja durch Semikolon getrennt. Ich suche ein Leerzeichen, das muss ich natürlich in Gänsefüßchen packen. Und damit bin ich schon fertig, "Klammer zu" und ich bekomme eine Zahl zurück, das werden Sie gleich sehen nach dem OK, ich werde das Ganze einfach vorsichtshalber schon mal speichern, also "qryTestNamenZerlegen" und das ausführen und dann sehen Sie, hier steht eine 7. Der Vorname "Lorenz" ist sechs Zeichen lang, damit steht das Leerzeichen an Position sieben. Theo ist vier Zeichen lang, das Leerzeichen steht also an Position fünf. Und damit habe ich diese Lösung für diese Version hier. Anstatt fest die sechs einzugeben, weiß ich jetzt das Leerzeichen steht an der Position "WoLeer" und bis ein weniger will ich haben. Und Sie können in Access Abfragen mit allen Feldern rechnen, die von hier aus gesehen links oder oberhalb stehen. Und dieses Feld "WoLeer" ist also hier schon berechnet wurden, es steht links davon, deswegen muss ich es dazwischen schieben und da steht eine Zahl drin von der ich jetzt eine abziehe. Wenn ich also WoLeer an siebenter Position habe, dann will ich die sechs Zeichen davon sehen. Und damit haben wir schon mal die Vornamen. Sie sehen jetzt, abgesehen davon, dass hier beim Götz von Berlichingen "der Freiherr" von Vornamen gehalten wird, das erste Wort erkläre ich hiermit zum Vornamen. Und jetzt brauche ich noch den Nachnamen. Also, das können wir ähnlich handhaben. hier ich mache das hier mit Umschalt+F2 in der Vergrößerung, hier haben wir ein neues Feld "Nachname" und ich behaupte jetzt einfach mal, was nicht Vorname ist muss Nachname sein. Und ich werde jetzt nicht als Gegenstück zu linksfunktion die Rechstsfunktionen nehmen, denn die rechnet von hinten, von rechts. Was ich brauche ist eine Funktion die ab der Mitte weiterrechnet. Und die heißt entsprechend "Teil (", dann will die als erstes wieder wissen welcher Feldname, also "test_Name;" und jetzt nicht wie viele Reststückchen ich haben will, sondern ab wo geht es denn los. Also hinter dem Leerzeichen, damit frage ich wieder meinen Feldnamen "WoLeer", wenn der an siebter Position steht, möchte ich jetzt "+1" dahinter weitermachen und eigentlich kann die Teilfunktion noch ein drittes Argument: Wie viele Buchstaben möchte ich ab da sehen? Wenn Sie dieses Argument nicht bedienen, sondern direkt die Klammer einfach zu machen, dann kriegen Sie den gesamten Rest. Die eckigen Klammern um diese beiden Feldnamen werden automatisch gesetzt, das können wir hier ein bisschen verbreitern, jeweils mit Doppelklick an dieser Trennlinie und vorsichtshalber speichern, dann sehen Sie jetzt an dieser Stelle für typische Vor-/ Nachnamen funktioniert das wunderbar. Und zwar sogar live, also wenn ich jetzt einen Neuen erfinde und mit Tab weiter gehe, sobald dieser Datensatz existiert sozusagen, aber noch nicht mal gespeichert ist, wie Sie hier sehen, kann ich sofort getrennt sehen welche Wörter Vor- und Nachnamen bilden. Für normale Namen funktioniert das wunderbar. Ich habe jetzt boshaft hier noch ein paar besondere Namen aufgenommen, die entwedermehrere Vornamen haben oder so ein Pseudoadeliges "von" davor, in Wirklichkeit ist es nämlich ein Künstlername, den er aus seinem vorherigen Adel übernommen hat. Hier vielleicht nochmal ein Titel, unten Doktor, unten Diplom-Ingenieur und Professor und sowas. Ddas würde irren Aufwand machen, das kriegt man mit so einfachen Techniken nicht hin. Sie müssen im Prinzip eine Worterkennung machen. Der "Freiherr" muss nicht mal vorne stehen, Es gibt auch die Variante "Götz Freiherr von Berlichingen". Also diese besonderen Namen, die kriegen Sie damit nicht zerlegt. Aber ganz ehrlich, das ist so eine Größenordnung, unter tausend Namen haben Sie wahrscheinlich 10, die diesem Schema nicht entsprechen, die Normalform, sondern Namenszerlegung und darum ging es jetzt eigentlich auch nur zu zeigen, wie so was berechnet wird, die funktioniert damit wunderbar. Und da gibt es eben auch für Texte, die Möglichkeit das anhand von Funktionen zu berechnen.

Office 365: Access Grundkurs

Erwerben Sie die notwendigen Kenntnisse, um mit Access in Office 365 leistungsfähige Datenbanken zu erstellen.

6 Std. 18 min (75 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Hersteller:
Exklusiv für Abo-Kunden
Erscheinungsdatum:08.09.2016

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!