Öffnen Sie eine Arbeitsmappe aus VBA und deaktivieren Sie Workbook_Open () -Code?

8

Ich öffne Kalkulationstabellen, die VBA verwenden, und einige der Arbeitsmappen enthalten Code, der gestartet wird, wenn Workbook_Open () aufgerufen wird.

Wie kann ich die Arbeitsmappen mit VBA öffnen, aber den Code automatisch ausführen? Ich öffne nur die Arbeitsmappen, um Formeln im Blatt zu betrachten - ich möchte keine Codeausführung.

    
mezamorphic 30.04.2013, 13:47
quelle

4 Antworten

10

Möchten Sie die Ereignisse deaktivieren, bevor Sie die Arbeitsmappe in VBA öffnen und sie für den Rest des Moduls erneut aktivieren? Verwenden Sie etwas wie folgt:

%Vor%     
pn7a 30.04.2013 14:05
quelle
5

Hier ein anderer Weg, um mit dem VBA zu öffnen

  

Start Excel Application > Go to File > Recent >

Halten Sie die Umschalttaste gedrückt und doppelklicken Sie zum Öffnen -

Dadurch wird verhindert, dass das Workbook_Open -Ereignis ausgelöst wird und das Auto_Open -Makro ausgeführt wird.

Oder halten Sie die Umschalttaste gedrückt und doppelklicken Sie, um das Arbeitsbuch zu öffnen.

    
0m3r 08.10.2015 01:26
quelle
3

Ich weiß nicht, warum das in den anderen Antworten nicht klar erwähnt wurde, aber ich fand Application.AutomationSecurity , genau das zu tun, was erforderlich war. Grundsätzlich

%Vor%

Selbst nachdem der Code ausgeführt wurde, werden die Einstellungen nicht mehr auf das Standardverhalten zurückgesetzt, sodass Sie sie erneut ändern müssen. Also für diese Frage

%Vor%     
Raunak Thomas 29.10.2017 05:18
quelle
0

Eine Kombination aus Application.EnableEvents und einem arbeitsmappenspezifischen Application.EnableEvents funktioniert hervorragend. Jedes Mal, wenn die Arbeitsmappe erneut referenziert wird (z. B. beim Kopieren von Zellen), werden die Aktivierungsereignisse erneut ausgelöst. Die Arbeitsmappe muss zuerst beendet werden und nach dem Schließen kann nicht darauf zugegriffen werden. Versuchen Sie Folgendes:

%Vor%     
Daniel Davis 10.01.2014 03:27
quelle

Tags und Links