Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Popup-Window in den Vordergrund bringen

Forumthread: Popup-Window in den Vordergrund bringen

Popup-Window in den Vordergrund bringen
28.01.2005 15:40:04
Michael
Hallo zusammen,
ich möchte eine MsgBox von Excel so ausgeben lassen, dass sie auch dann im Vordergrund erscheint, wenn ich gerade in einer anderen Anwendung aktiv bin. Geht das?
Bisher habe ich folgenden Code:

Sub Aufruf()
Application.OnTime Now + TimeSerial(0, 0, 5), "countdown"
End Sub
Sub countdown()
Set WsShell = CreateObject("WScript.Shell")
For c = 10 To 1 Step -1
a = WsShell.Popup(Str(c), 1, "Countdown")
Next c
End Sub

Mit diesem Code wird zwar eine MsgBox erzeugt und in der Taskleiste angezeigt. Sie kommt aber nicht in den Vordergrund.
Danke & Ciao,
Michael G.
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Popup-Window in den Vordergrund bringen
28.01.2005 20:41:51
Nepumuk
Hallo Michael,
ich bin zwar nur Amateur, aber ich würde das so machen:
https://www.herber.de/bbs/user/17078.xls
Gruß
Nepumuk
"..ich bin zwar nur Amateur,." :-) Grins*lol* o.T.
Ramses
...
AW: Popup-Window in den Vordergrund bringen
28.01.2005 21:26:37
Michael
Herzlichen Dank, Nepomuk!!!
Das ist das, was ich suche & es hat auch gleich funktioniert!
Ciao,
Michael G.
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Popup-Window in den Vordergrund bringen


Schritt-für-Schritt-Anleitung

Um ein VBA Popup Window im Vordergrund erscheinen zu lassen, kannst du den folgenden Code verwenden. Hier wird die WScript.Shell-Objektmethode genutzt, um das Popup anzuzeigen.

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
  2. Füge ein neues Modul hinzu (Einfügen > Modul).
  3. Kopiere den folgenden Code in das Modul:
Sub Aufruf()
    Application.OnTime Now + TimeSerial(0, 0, 5), "countdown"
End Sub

Sub countdown()
    Set WsShell = CreateObject("WScript.Shell")
    For c = 10 To 1 Step -1
        a = WsShell.Popup(Str(c), 1, "Countdown")
    Next c
End Sub
  1. Schließe den VBA-Editor und führe das Makro Aufruf aus. Das Popup sollte jetzt in den Vordergrund kommen, auch wenn du in einer anderen Anwendung bist.

Häufige Fehler und Lösungen

  • Popup erscheint nicht im Vordergrund: Stelle sicher, dass der Code korrekt eingegeben wurde und dass du die richtigen Berechtigungen in Excel hast, um Makros auszuführen.
  • VBA läuft nicht: Überprüfe, ob die Makros in Excel aktiviert sind. Gehe zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen und aktiviere die Makros.

Alternative Methoden

Falls der WScript.Shell-Ansatz nicht funktioniert, kannst du auch andere Methoden in Betracht ziehen, wie z.B. die Verwendung von UserForm in VBA:

  1. Erstelle ein UserForm und füge die gewünschten Steuerelemente hinzu.
  2. Zeige das UserForm mit UserForm.Show vbModeless an, um es im Vordergrund anzuzeigen.

Praktische Beispiele

Hier ist ein einfaches Beispiel, um ein Popup mit wshell.popup zu erstellen:

Sub ShowPopup()
    Dim wshell As Object
    Set wshell = CreateObject("WScript.Shell")
    wshell.Popup "Dies ist ein einfaches Popup", 5, "Mein Popup"
End Sub

Das wshell.popup zeigt die Nachricht für 5 Sekunden an und verschwindet danach automatisch.


Tipps für Profis

  • Verwende Application.Wait, um eine Verzögerung im Makro einzubauen, falls du weitere Aktionen nach dem Popup durchführen möchtest.
  • Experimentiere mit verschiedenen Popup-Optionen, um das Verhalten (z.B. Zeitdauer, Schaltflächen) anzupassen.
  • Achte darauf, dass die Excel-Version, die du verwendest, die Ausführung von ActiveX und Makros unterstützt.

FAQ: Häufige Fragen

1. Wie kann ich das Popup-Fenster anpassen?
Du kannst die Titelzeile und die Dauer des Popups anpassen, indem du die Parameter in wshell.Popup änderst.

2. Gibt es eine Möglichkeit, das Popup in HTML zu erstellen?
Ja, du kannst ein Popup Window HTML in einem Webbrowser verwenden, allerdings ist das außerhalb der VBA-Umgebung. Du müsstest dafür JavaScript oder eine andere Webtechnologie verwenden.

3. Welche Excel-Version benötige ich?
Die beschriebenen Methoden sollten in den meisten Versionen von Excel funktionieren, solange die Unterstützung für VBA gegeben ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige