ich habe noch immer Schwierigkeiten mit der Gültigkeit von Variablen.
Zur Verdeutlichung des Problems.
Ich habe 3 Arbeitsmappen. Mappe1 ist Steuermappe und ruft je nach Anforderung Mappe2 oder Mappe3 auf, bearbeitet den Auftrag und schließt sie wieder. Die Tabellen mit den darin befindlichen Auswertefunktionen befinden sich in den Mappen 2 und 3. Funktionen, die in allen anderen Mappen benötigt werden in Mappe1.
In Mappe1 wird im Kopf z.B. ein Rangeobjekt "Kopfsatz" als Public definiert, und in einer Funktion der Bereich mit SET zugewiesen.
Wenn ich jetzt eine Auswertung aufrufe (Application.Run "Mappe2!Funktion"), und innerhalb dieser Funktion eine Funktion aufrufe, die, weil sie in allen anderen Funktionen der Mappe2 und Mappe3 gebraucht wird in Mappe1 abgelegt ist erhalte ich die Fehlermeldung, dass ein Objekt erforderlich ist also nicht bekannt ist.
Beispiel
Mappe1
public Kopfsatz as Objekt
Function
...Bereich markieren
SET Kopfsatz = Bereich
end Funktion
Bei Macros, die innerhalb Mappe1 liegen kein Problem.
Aufruf er Funktion in Mappe2 durch Application.Run "Mappe2!Funktion"
Innerhalb dieser Funktion wird der Bereich "Kopfsatz" gebraucht, Kopfsatz.activate . Hier erhalte ich dann die Felermeldung Objekt wird benötigt, dh. er kennt diese "Variable" nichtmehr.
Die Variable Kopfsatz ist aber doch 1. als Public deklariert, 2. in der ersten aufrufenden Funktion definiert und sollte somit aus meiner Kenntnis allen anderen Funktionen zur Verfügung stehen.
Was ist nötig zu tun, oder mach ich was falsch?
MfG. Klaus Viertel