VB Popup beim Öffnen einer Excel-Datei

JSP

Mr. Mystery
ID: 82422
L
3 Mai 2006
1.139
38
Erstmal sorry falls ich ein falsches Präfix gesetzt habe, aber meiner Wahrnehmung nach werden Excel-Macros in Visual Basic erstellt...

Ich möchte ein wegzuklickendes Popup beim Öffnen einer Excel-Tabelle haben. Nach Google-Suche habe ich diesen Code gefunden:

Sub auto_open()
MsgBox ("Hallo, ich bin der Nachrichtentext.")
End Sub

Einzupflegen: Alt+F11, klick auf "diese Arbeitsmappe" und dann einfügen. VB-Editor speichern, schließen und Excel-Tabelle auch speichern. Leider kommt dann aber kein Nachrichtenfenster. Wer kann abhelfen?
 
Wird VBA (Visual Basic for Applications) genannt.

In M:money: Excel gibts diese Workspace_Open()-Prozeduren. Im VBA-Editor kannst du die in den zwei Combos oben am Codefenster auswählen. Hab grade (seit Jahren) kein Excel mehr zu Hand.

edit:
Ich weiß aber nicht, ob die für die aktuelle oder für alle Arbeitsmappen is. Musst du vorher nochmal googlen evtl.
 
Erstmal sorry falls ich ein falsches Präfix gesetzt habe, aber meiner Wahrnehmung nach werden Excel-Macros in Visual Basic erstellt...

Ich möchte ein wegzuklickendes Popup beim Öffnen einer Excel-Tabelle haben. Nach Google-Suche habe ich diesen Code gefunden:

Sub auto_open()
MsgBox ("Hallo, ich bin der Nachrichtentext.")
End Sub

Einzupflegen: Alt+F11, klick auf "diese Arbeitsmappe" und dann einfügen. VB-Editor speichern, schließen und Excel-Tabelle auch speichern. Leider kommt dann aber kein Nachrichtenfenster. Wer kann abhelfen?

Hallo JSP,

eventuell ist die Sicherheit für Makros zu hoch, bzw. sind die Makros generell deaktiviert.

Excel 2007:
• Schaltfläche Office
• Excel-Optionen --> Vertrauenstellungscenter
• Einstellungen für Vertrauenscenter
• Einstellungen für Makros
• Alle Makros aktivieren
• Excel neu starten

Excel 2003:
Abschalten der Sicherheitsabfrage mit:
• Rufen Sie das Menü "Extras" auf und wählen Sie den Befehl "Makro".
• Im verzweigenden Menü rufen Sie "Sicherheit" auf.
• Im Register "Sicherheitsstufe" wählen Sie "niedrig".
• Bestätigen Sie die Änderungen mit "OK".
• Excel neu starten

Beste Grüße
harrys26
 
Die Makros werden erlaubt, daran liegts also nicht. Das war auch mein erster Gedanke.

Leider kann ich mit der Antwort vom Hacker nix anfangen, da ich kein VB gelernt habe und das somit auch nicht verstehe :ugly:
 
Geht bei mir beides nicht :-( Nutze Excel 2003 SP3, nur falls das hilfreich sein sollte.
 
Geht bei mir beides nicht :-( Nutze Excel 2003 SP3, nur falls das hilfreich sein sollte.

Wann funktioniert es nicht. Beim öffnen der ExcelDatei oder direkt aufrufen aus dem VB-Editor. Hast du beides schon probiert? Funktioniert überhaupt irgendein testmakro?
 
Zuletzt bearbeitet:
Es tut sich nix beim Öffnen der Ecel-Datei, außer dass die Datei ganz normal geöffnet wird. Aber er erkennt dass ein Makro vorliegt, da er mich abfragt ob ich Makros zulassen will. Nur er tuts nicht ;-)

Wie kann ich das Makro separat aufrufen zum testen? Wie gesagt, ich kenn mich mit Makros net wirklich aus.
 
Wie kann ich das Makro separat aufrufen zum testen? Wie gesagt, ich kenn mich mit Makros net wirklich aus.

Im Editor in das Makro klicken und F5 oder oben in der Taskleiste auf Play(Sub/Userform ausführen) klicken. Dann sollte eigentlich irgendetwas passieren bzw. eine Fehlermeldung kommen.
 
  • Like
Reaktionen: JSP
Hallo JSP,

probiere mal das angehängte Beispiel aus!

Keine Angst, ist alles sauber.

Gruss Harald
 

Anhänge

  • test.zip
    7,9 KB · Aufrufe: 6
Zuletzt bearbeitet:
  • Like
Reaktionen: JSP
Im Editor in das Makro klicken und F5 oder oben in der Taskleiste auf Play(Sub/Userform ausführen) klicken. Dann sollte eigentlich irgendetwas passieren bzw. eine Fehlermeldung kommen.

8O8O8O Du wirst es nicht glauben, aber es funzt. Ich habs mit F5 getestet und es ging. Dann einfach nur gespeichert und geschlossen, wieder geöffnet und seitdem gehts. Seit wann muss man Makros erstmal testen um sie zu starten?

Ich tippe mal auf "Willkommen in der unerklärlichen Welt von M$"... *grml*

Jetzt noch eine Bitte: wie kann ich in der Messagebox einen Zeilenumbruch erzwingen?
 
Für Zeilenumbruch gibts auch die plattformspezifische Konstante vbNewLine, die unter Windows für
Code:
Chr(13) & Chr(10)
steht (Quelle), also besser is ;)