Hallo René,
Access macht ja nichts von alleine. Wenn Du also keinen Code gebaut hast, bei dem das Formular oder z.B. der Detailbereich auf einen Klick reagieren soll, dann passiert auch keine Code-Ausführung.
ZitatBei der Auswahl des Feldes habe ich btnSend ausgewählt und er zeigt mir auch die Handlung click daneben an.
Auch nach dem 6. Lesen kann ich mir nicht entfernt vorstellen, was dieser Satz bedeuten soll.
Ich würde generell Deine Mail-Send-Funktion verbessern, indem sie nach dem Abgreifen der Control-Inhalte prüft, ob der Inhalt valide ist. Für eine Mailadresse mal minimal das Vorhandensein auf "@" und natürlich, ob der Inhalt leer ist oder nicht. Ebenso sollte ein Betreff nie leer sein. Und ein leerer Body macht i.d.R. auch keinen Sinn.
Das sollte Deine Funktion alles prüfen und abfangen und den Benutzer darauf hinweisen, und wenn nicht alles erfüllt ist, die Mail nicht senden.
Daneben hilft dann einfach, einen Breakpoint in den Code zu setzen und zu debuggen. Dann siehst Du, was da genau passiert und wer der Verursacher ist.
Ansonsten müßte man schon den gesamten Formularcode sehen, um mehr dazu zu sagen. Wenn das schon der gesamte Code war, dann kann das, was Du sagst, nicht zutreffen, da es hier keinen anderen Eventcode als den eines Buttons gibt. Vorausgesetzt, "btnSend" ist der Name eines Button-Controls und nicht eines anderen Objektes...
Gruß
Christian
Ich würde schon bei der Eingabe der Mail Adresse prüfen ob diese Valide ist.
Ungefähr so:
Public Function IsValidEmail(sEmailAddress As String) As Boolean
Dim objRegExp As Object
Set objRegExp = CreateObject("VBScript.RegExp")
With objRegExp
.Pattern = "^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$"
.IgnoreCase = True
.Global = False
End With
IsValidEmail = objRegExp.Test(sEmailAddress)
End Function
Diese Function gibt True oder False zurück und das am besten schon bei der Eingabe. und ansonsten hat Christian recht, man müsste mal den gesamten Code sehen.
Holger