Microsoft Excel

Herbers Excel/VBA-Archiv

Worksheet_Activate() schläft ungewollt



Excel-Version: 5.0/7.0

Betrifft: Worksheet_Activate() schläft ungewollt
von: Andreas X
Geschrieben am: 09.06.2002 - 22:50:19

Ich öffne eine Excel-Datei mit Festhalten der Shift-Taste, so dass das Workbook_open() nicht aktiviert wird.

Leider sind dann auch alle a) "Sub Worksheet_Activate()" und b) "Worksheet_Change(ByVal Zelle As Range)" unwirksam, wenn ich die Arbeitsblätter wechsel oder Eintragungen in einem Arbeitsblatt vornehme.

Die werden leider erst alle wieder aktiv, wenn ich von Hand (z.B. per Button) erst ein beliebiges Makro durchlaufen lassen.

Ich möchte aber gerne, dass die beiden a) und b) trotzdem von Anfang an wirksam bleiben, auch wenn ich die Datei mit Festhalten der Shift-Taste geöffnet habe.

Weiß da jemand/in einen Trick?

Mit großem Dank im Voraus,
Andreas


  

Re: Worksheet_Activate() schläft ungewollt
von: Hans W. Herber
Geschrieben am: 10.06.2002 - 05:26:37

... nein, das funktioniert nicht. Mit diesem Feature soll sichergestellt werden, dass eben keine Makros aktiviert sind. Könnte dieses Prinzip durchbrochen werden, hätten wir eine zusätzliche Sicherheitslücke.
Alternative: Verwende das alte Auto_Open-Ereignis und rufe die Arbeismappe über VBA-Code auf, damit ist dieses Ereignis automatisch deaktiviert, ohne dass die anderen Ereignisse betroffen sind.

Deine Excel-Versionsangabe stimmte übrigens nicht.

hans

  

Re: Worksheet_Activate() schläft ungewollt
von: Andreas X
Geschrieben am: 10.06.2002 - 09:09:51

Danke Hans für die prompte Hilfe und guten Morgen.
Schade, dass es da keinen Ansatz gibt.

Kannst Du auch sagen, warum dann die Makros Worksheet_Activate und Worksheet_Change(ByVal Zelle As Range) dennoch aus ihrem Schlaf geweckt sind, nachdem ich von Hand ein beliebiges Makro gestartet habe (in einer Datei, die mit Halten der Shift-Taste geöffnet wurde)?

Guten Tag noch,
Andreas


  

Re: Worksheet_Activate() schläft ungewollt
von: Hans W. Herber
Geschrieben am: 10.06.2002 - 09:15:53

Hallo Andreas,

eine Arbeitsmappe mit gehaltener Shift-Taste zu öffnen heißt, dass man die Makroausführung unterbinden will. Startet man danach ein Makro, wird dies so verstanden, dass man mit Makroausführungen einverstanden ist. Unterschiede zwischen Ereignis- und normalen Programmteilen werden hier nicht gemacht.

hans