Hallo zusammen!
Irgendwie habe ich eine Denkblockade - oder ist mein Problem vielleicht zu trivial?
Ich habe in einer Tabelle (Speichern von Personaldaten) u.a. vier Felder (alle vom Typ char, maximale Länge 255 Zeichen) zur Angabe von
- vorangestellten akademischen Graden
- Vorname
- Zuname
- nachgestellte akademische Grade
Zusätzlich habe ich ein weiteres Feld ("P_NAME_KOMB"), in dem ich - nachdem es eben mehrere Varianten der Namensdarstellung geben kann - den ggf. verketteten Namen inkl. aller evtl. akademischen Grade speichern möchte.
Beim Click-Event auf einen CmdBtn, bei dem ich den Datensatz speichere, habe ich zusätzlich folgenden Code hinterlegt, der die Inhalte des der vier (ggf. befüllten) Felder im Feld "P_NAME_KOMB" anhand der Eingaben verketten soll.
If Me![P_AKADGRAD] = "" And Me![P_AKADGRAD_NACHG] = "" Then
Me![P_NAME_KOMB] = Me![P_VORNAME] & " " & UCase(Me![P_ZUNAME])
ElseIf Me![P_AKADGRAD_NACHG] = "" Then
Me![P_NAME_KOMB] = Me![P_AKADGRAD] & " " & Me![P_VORNAME] & " " & UCase(Me![P_ZUNAME])
ElseIf Me![P_AKADGRAD] = "" Then
Me![P_NAME_KOMB] = Me![P_VORNAME] & " " & UCase(Me![P_ZUNAME]) & ", " & Me![P_AKADGRAD_NACHG]
Else
Me![P_NAME_KOMB] = Me![P_AKADGRAD] & " " & Me![P_VORNAME] & " " & UCase(Me.P_ZUNAME) & ", " & Me![P_AKADGRAD_NACHG]
End If
Wenn ich nun alle Felder mit Werten befülle - sagen wir, die Person heißt mit allen Ausprägungen "Dr. Maria MUSTERFRAU, BSc" - funktioniert das auch anstandslos.
Nun aber zu meinem Problem:
- Wenn ich aber den Doktortitel weglasse, dann wird zwar "Maria MUSTERFRAU, BSc" hinterlegt - jedoch mit einem Leerzeichen vor dem Vornamen.
- Wenn ich einen Doktortitel eingebe, aber den nachgestellten "BSc" weglasse, dann wird hinter dem Zunamen ein Komma und ein Leerzeichen eingefügt
- Wenn ich den Doktortitel und den nachgestellten "BSc" weglasse, dann wird ein Leerzeichen vor dem Vornamen sowie hinter dem Zunamen ein Komma und ein Leerzeichen eingefügt
Ich bin echt ratlos - habe den Code auch schon so umgeschrieben, dass auf "NULL" geprüft wird - leider mit dem gleichen Erfolg wie oben beschrieben.
Was mache ich hier falsch?
Kann mir bitte jemand helfen?
Vielen Dank im Voraus und viele Grüße,
VIE81