ich habe hier schon im Forum gesucht aber leider nichts zum Thema Globale Definition von Errorhandlings gefunden.
Ich bekomme in einer bestimmten Konstellation (Aufrufen diverser Range(XYZ).calculate Makros, in einer Datei, die zum Zeitpunkt des Aufrufs zwar offen, aber nicht das aktive Fenster ist, die Fehlermeldung, daß die Methode Range fehlgeschlagen ist.
Die Makros werden durch Klick auf Buttons in einer eigenen Commandbar aufgerufen.
Nun möchte ich eine Messagebox kommen lassen, die darauf hinweist, daß die Datei das aktive Fenster sein sollte, wenn die Berechnung gestartet wird.
(Anmerkung: Eleganter wäre es, daß der Fehler gar nicht erst kommt, weil die Range Adressierung noch verbessert wird, aber ich möchte auch nicht dazu ermuntern, wild Berechnungen zu initiieren, ohne mit dem Blick, mit den Gedanken auf dem Blatt zu sein, auf dem die Berechnungen laufen.)
Das Modul, in dem diese Makros liegen, sieht in etwa so aus:
Option Explicit
Private Declare Function GetTickCount Lib "kernel32" () As Long
Public lngTime As Long
Sub Berechnung_1
End Sub
Sub Berechnung_2
End Sub
Sub Berechnung_2
End Sub
Nun meine Frage: Kann ich ein Errorhandling global für ein ganzes Modul definieren? Also nicht in jedes Makro einzeln schreiben:
On Error goto Errorhandler
, sondern ähnlich wie die globale Definition für die GetTickCount- Zeitmessung definiere ich für alle Makros in diesem Modul: Wenn du ein Fehler hast, gehe zum ERRORHANDLER:
Der Errorhandler ist dann die MsgBox ganz am Ende.
Ich habe schon probiert On Error goto direkt unter Option Explicit zu schreiben und den Errorhandler ans Ende. Kein Erfolg.
Wie kann dieses Problem elegant gelöst werden? Ich bin für jede Anregung dankbar.
Grüße, Andreas Hanisch