1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Excel-VBA: application-Ereignis-Prozedur wird nicht ausgeführt

Discussion in 'Programmieren' started by Hascheff, Nov 24, 2006.

Thread Status:
Not open for further replies.
  1. Hascheff

    Hascheff Moderator

    In meinem jugendlichen Leichtsinn habe ich dort zu magiceye gesagt, man müsste ein AutoOpen-Makro schreiben. Mal abgesehen davon, dass das wohl nicht die Lösung gewesen wäre, hab ich auch nicht daran gedacht, dass Word nicht Excel ist.

    Jedenfalls habe ich jetzt prinzipiell die Lösung, es läuft bloß nicht.
    Es ist nur ein Befehl, und der ist problemlos:

    <Objekt>.CommandBars("Web").Visible = False

    Das Problem ist, dass der Befehl dem Ereignis WorkbookOpen der Applikation zugeordnet werden muss.
    Nun habe ich in der Hilfe gelesen
    Und
    Also habe ich ein Klassenmodul erstellt, die Public-Zeile geschrieben, dann konnte ich für das Objekt App das WorkbookOpen-Ereignis wählen.
    Vorher noch X initialisieren - das sah etwas anders aus als in der Hilfe: für class die Prozedur initialize gewählt, da erschien

    Private Sub Class_Initialize()
    Set X.App = Application

    End Sub


    , wobei Set von mir eingefügt wurde.

    Nun habe ich in WorkbookOpen den Befehl gleich dreimal in verschiedenen Varianten geschrieben, keiner funktionierte. Imho müsste der Mittlere funktionieren.

    Was habe ich übersehen?

    Ich hab Excel 2000.
     
  2. Sailor Bill

    Sailor Bill Halbes Megabyte

    Hi,

    ist doch ganz einfach:

    1.) Makro-Editor öffnen
    2.) Doppelklick auf "Diese Arbeitsmappe" in der entsprechenden Datei
    3.) Diesen Code einfügen:
    Code:
    Private Sub Workbook_Open()
      Application.CommandBars("Web").Visible = False
    End Sub
    4. Fertig
     
  3. Hascheff

    Hascheff Moderator

    Danke, aber: Nein, ist eben nicht so einfach!
    Was du beschreibst, ist ein Ereignis des Objekts Workbook.
    WorkbookOpen ist ein Ereignis des Objekts Application.
    Lies dir mal den Thread des Links in #1 durch.
     
Thread Status:
Not open for further replies.

Share This Page