Datenaktualisierung aus Formular mit Hilfe eines Moduls (VBA)

Peter_ @, Donnerstag, 21.01.2016, 11:31 (vor 1420 Tagen) @ Martin Asal

Hallo Martin,

herzlichen Dank für die schnelle und detaillierte Hilfe!
Ich hatte schon vermutet, dass es eine 'einfache' Lösung gibt - aber die Syntax... immer wieder ein Problem für mich.

Nur ein kleiner 'Wermutstropfen':
Beim Verlassen des Feldes 'Anrede' ('Anrede_Exit') kommt folgende Fehlermeldung:
Laufzeitfehler '94': Unzulässige Verwendung von Null

Diese Fehlermeldung kommt in zwei Fällen:
(bei neuen und bestehenden Datensätzen)
- Feld Nachname ist leer
- Feld Anrede ist leer

Hier nochmal die aktuellen Prozeduren:
Public Function NeueAnrede(xAnrede As String, xNachname As String) As String
NeueAnrede = Trim(xAnrede)
Select Case NeueAnrede
Case "Herr", "Herrn"
NeueAnrede = "Herrn"
Case "Frau"
'
Case Else
If IsNull(xNachname) Or xNachname = "" Then
'Anm.: Versuch, NULL-Wert auszublenden
Else
If Len(Trim(xNachname)) > 0 Then
NeueAnrede = "Frau/Herrn"
End If
End If
End Select
End Function

Private Sub Anrede_Exit(Cancel As Integer)
Anrede = NeueAnrede(Me.Anrede, Me.Nachname)
End Sub

-------

Dieses Problem trat nicht auf, als dies (in alter Form) komplett im Formular verarbeitet wurde.
Vieleicht hast du dafür auch einen "einfachen" :-) Tipp?

=================

Deiner Anmerkungen zur Anrede-Kodierung (Ziffern statt Text) stimme ich grundsätzlich zu.
In diesem Fall gibt es (außer ein wenig Bequemlichkeit) noch einen anderen Grund:
Ich gebe öfter einmal Adressen weiter (exportieren nach Excel) und da ist es einfach praktischer für die Empfänger, wenn die Anreden im Klartext drinstehen. Bei einer 'richtigen' programmierten Anwendung ist das mit der Ziffernkodierung natürlich optimaler.

Danke und Gruß
Peter


gesamter Thread:

 RSS-Feed dieser Diskussion

powered by my little forum