Farbschema: Hell
Sie befinden sich hier: start » de » Dokumentation » Werkzeuge für Microsoft Access » WKL Forms Object Library » troubleshooting » Die Aktion einer Benachrichtigung bewirkt nichts, oder es erscheint keine Benachrichtigung

Die Aktion einer Benachrichtigung bewirkt nichts, oder es erscheint keine Benachrichtigung

Umgebung

WklToast ab 1.34, in Access sowie auf UserForms in Excel und Word.

Ursache

  • Das Objekt, das die Benachrichtigung angezeigt hat, existiert nicht mehr. Das Ereignis Action geht an das WklToast-Objekt, das die Benachrichtigung angezeigt hat, und VBA liefert Ereignisse nur an eine Variable, die auf Modulebene eines Formular-, Berichts- oder Klassenmoduls mit WithEvents deklariert ist. Eine Benachrichtigung, die über eine lokale Variable angezeigt wurde (Dim note As New WklToast in einer bereits beendeten Prozedur), löst ihre Ereignisse ins Leere aus.
  • Die Behandlungsroutine hat den falschen Namen. Die Prozedur muss nach der Variablen benannt sein: mToast_Action für Private WithEvents mToast As WklToast.
  • Kein Fenster für die Benachrichtigung. Ohne Form braucht die Benachrichtigung das Access-Fenster (in anderen Hostanwendungen ein aktives Fenster); gibt es keines, löst Show den Fehler wkeNotAvailable aus, und es erscheint keine Benachrichtigung.
  • Die Benachrichtigung wurde mit ihrem Formular geschlossen. Eine mit Form angezeigte Benachrichtigung schließt sich, wenn dieses Formular geschlossen wird (Closed mit wtrOwnerClosed).

Lösung

  1. Halten Sie das Objekt auf Modulebene: Private WithEvents mToast As WklToast, erzeugt in Form_Load, und wählen Sie in den Listen oben im Codefenster mToast und Action, damit VBA den Prozedurkopf schreibt.
  2. Wo kein Modul zuhört (ein Standardmodul, eine Prozedur, die endet), geben Sie im letzten Argument von Show, ActionFunction, eine Funktion an, zum Beispiel "=RegelWiederherstellen(17)"; Access wertet sie aus, wenn der Benutzer die Aktion wählt, gleich was aus dem Objekt geworden ist. Ein Fehler im Ausdruck erscheint in einem Meldungsfeld, wie bei einem Menüeintrag.
  3. Zeigen Sie Benachrichtigungen, die ein Formular überdauern müssen, ohne Form an, damit sie im Access-Fenster stehen.

Verwandte Themen

de/wiki/msaccess/comctl/troubleshooting/note-action-does-nothing.txt · Zuletzt geändert: von Wolfgang van der Stille