Artikel-ID: 501461 - Geändert am: Dienstag, 27. August 2002 - Version: 1.0 Alle Fenster bis auf eines schließenDieser Artikel wurde zuvor veröffentlicht unter D26019 ProblembeschreibungIch habe in WORD für WINDOWS meist viele Fenster aktiv und möchte gerne mit einem Kommando alle Fenster bis auf eines schließen. Wie kann ich das realisieren? Lösung
Sie können die gewünschte Funktion durch ein Makro erreichen. Das Makro überprüft zuerst, welche Fenster existieren und stellt Sie Ihnen anschließend in einer Dialogbox dar. Dann können Sie einfach das Fenster anwählen, welches am Schluß übrig bleiben soll. Sub MAIN Dim FensterNamen$(ZählenFenster()) REM zählt die Anzahl und Fenster und dimensioniert die Varbiable FensterNamen$ dementsprechend For i = 1 To ZählenFenster() FensterNamen$(i) = FensterName$(i) Next i REM Diese Schleife übergibt die Fensternamen an die Variable FensterNamen$ FensterNamen$(0) = "kein Fenster" REM hiermit wird die Variable FensterNamen$(0) vorbelegt Begin Dialog UserDialog 570, 206, "Fenster schließen" ListBox 20, 57, 532, 108, FensterNamen$(), .Auswahl Text 20, 13, 492, 13, "Was soll übrig bleiben?" PushButton 154, 177, 113, 21, "OK" PushButton 279, 177, 113, 21, "Abbrechen" End Dialog REM mit diesen Zeilen wird die Dialogbox definiert Dim dlg As UserDialog dlg.Auswahl = Fenster() - 1 REM die Variable dlg.Auswahl in der Dialogbox wird vordefiniert x = Dialog(dlg) REM Aufruf der Dialogbox If x = 1 Then For i = 1 To ZählenFenster() If FensterNamen$(i) <> FensterNamen$(dlg.Auswahl) Then Aktivieren FensterNamen$(i) DokumentSchließen EndIf Next i REM in der Schleife werden alle Fenster außer dem ausgewählten geschlossen If FensterNamen$(dlg.Auswahl) <> "kein Fenster" Then FensterAllesAnordnen REM falls ein Dokument ausgewählt wurde, wird das Fenster neu angeordnet EndIf End Sub Bitte beachten Sie beim Abschreiben des Makros, daß zwei Zeilen, die ohne Leerzeile untereinander stehen, im Makro eine Codezeile darstellen. Solche Zeilen dürfen nicht mit einem erzwungenen Umbruch geschrieben werden. Eine Leerzeile stellt also jeweils den Beginn einer neuen Codezeile dar. Die Zeilen, die mit einem REM beginnen, stellen einen Komentar dar, der jeweils nach den jeweiligen Befehlen steht.
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.
|

Zum Anfang
