Supportnet / Forum / Tabellenkalkulation
Kleines Konstantenproblem bei Worksheets
Frage
Hi Leute,
da ich zur Zeit ein größeres Excel-Projekt am Laufen habe und sich dabei nun doch etliche Funktionen und Subs angehäuft haben, würde ich den Code doch gerne etwas aufräumen und einkürzen.
Auf etliche Worksheets muß ich immer wieder zugreifen und zur Zeit habe ich diese immer in den Funktionen bzw. Subs aufgeführt:
Dim WK As Worksheet
Dim DS As Worksheet
Set WK = Worksheet("Tabelle 1")
Set DS = Worksheet("Tabelle 2")
etc.
Das funktioniert auch ist jedoch in meinen Augen sehr umständlich.
Gibt es eine Möglichkeit solche Angaben EINMAL per public zur Verfügung zu stellen, so daß ich diese Angaben nicht immer bei jeder Sub bzw. Funktion neu definieren muß?
Es wäre für mich viel praktischer, wenn ich obige Zeilen in den Subs, etc. weglassen und direkt immer WK.[H8].Value, etc. schreiben kann, statt obige Zeilen immer neu definieren zu müssen oder immer Worksheets("Tabelle 1").[H8].Value ausschreiben zu müssen.
Kennt Ihr da einen Tipp oder Trick? Die Excel-Hilfe hat mir nicht großartig weitergeholfen und hier habe ich über die Suche auch nichts spezifisches gefunden.
Ich bedanke mich schon mal im Voraus.
Aurelius
Antwort 1 von Nepumuk
Hallo Aurelius,
dazu musst du in einem Modul die beiden Variablen als Public deklarieren. Also nicht in einem Makro, sondern oberhalb deiner Makros. Das initialisieren machst du am besten im Workbook_Open - Ereignis.
Gruß
Nepumuk
dazu musst du in einem Modul die beiden Variablen als Public deklarieren. Also nicht in einem Makro, sondern oberhalb deiner Makros. Das initialisieren machst du am besten im Workbook_Open - Ereignis.
Gruß
Nepumuk
Antwort 2 von Aurelius
Hi Nepumuk,
das habe ich bereits versucht.
Jedoch erhalte ich dann immer eine Fehlermeldung, das ich SET WK... außerhalb von Funktionen und Subs nicht verwenden dürfe.
Irgendwie verwirrt mich Excel in dem Punkt etwas.
Aurelius
das habe ich bereits versucht.
Jedoch erhalte ich dann immer eine Fehlermeldung, das ich SET WK... außerhalb von Funktionen und Subs nicht verwenden dürfe.
Irgendwie verwirrt mich Excel in dem Punkt etwas.
Aurelius
Antwort 3 von Aurelius
Kleiner Nachtrag...
Ich habe im Workbook die Variablen auf Public gesetzt, also:
Public WK As Worksheet
Soweit so gut. In Workbook_Open habe ich dann die Variablen mit
SET WK = Workbook("Tabelle 1")
deklariert.
Will ich jedoch jetzt die Variable WK in einer Funktion oder in einem Sub verwenden kriege ich jedoch immer die Meldung, die Variable wäre nicht definiert.
Kann ich irgendwie nicht nachvollziehen.
Aurelius
Ich habe im Workbook die Variablen auf Public gesetzt, also:
Public WK As Worksheet
Soweit so gut. In Workbook_Open habe ich dann die Variablen mit
SET WK = Workbook("Tabelle 1")
deklariert.
Will ich jedoch jetzt die Variable WK in einer Funktion oder in einem Sub verwenden kriege ich jedoch immer die Meldung, die Variable wäre nicht definiert.
Kann ich irgendwie nicht nachvollziehen.
Aurelius

