Ungleichmäßige Aufteilung des Bildschirms auf zwei Arbeitsmappen (Microsoft Excel)
Wenn Dave zwei Arbeitsmappen geöffnet hat, verwendet er häufig Arrange | Horizontal, um sie gleichzeitig anzuzeigen. Dadurch wird der Abstand zwischen den beiden Arbeitsmappen gleichmäßig aufgeteilt. Es kommt jedoch häufig vor, dass Dave nur wenige Datenzeilen in einer Arbeitsmappe und viele Zeilen in der anderen sehen möchte. Er fragt sich, ob es eine bequeme Möglichkeit gibt, die kleinere Arbeitsmappe manuell zu dimensionieren und Excel den verbleibenden Platz auf dem Bildschirm mit der zweiten Arbeitsmappe füllen zu lassen.
Die manuelle Vorgehensweise ist Dave (und den meisten anderen Excel-Benutzern) bereits bekannt: Sie ordnen die Fenster horizontal an, ändern die Größe des oberen Fensters und dann die Größe des unteren Fensters. Auf diese Weise erhalten Sie die Fenster so, wie Sie es möchten, um Ihre Arbeit zu erledigen.
Wenn Sie die Größe der Fenster automatischer ändern möchten, können Sie ein Makro verwenden, um die Aufgabe auszuführen. Das folgende Makro basiert darauf, dass Sie das erste Fenster nach Ihren Wünschen dimensionieren und dann die Größe des zweiten Fensters automatisch ändern, um den verbleibenden Platz unter dem oberen Fenster einzunehmen.
Sub UnevenSplit1() Dim Ht0 As Single Dim Ht1 As Single Dim Ht2 As Single Dim Top2 As Single If Windows.Count = 2 Then With Windows(1) Ht1 = .Height .WindowState = xlMaximized Ht0 = .Height End With Top2 = Ht1 + 3 Windows.Arrange ArrangeStyle:=xlHorizontal With Windows(1) .Top = 1 .Height = Ht1 End With With Windows(2) .Top = Top2 .Height = Ht0 - Ht1 - 22 End With Windows(1).Activate End If End Sub
Das Makro ändert die Größe Ihrer Arbeitsmappenfenster nur, wenn nur zwei Arbeitsmappen geöffnet sind. Wenn Sie mehr oder weniger haben, sieht es so aus, als ob nichts passiert.
Sie können die Automatisierung in einem weiteren Schritt ausführen, indem Sie die Größe des Makros auch im oberen Fenster ändern. Das folgende Beispiel endet damit, dass Ihr oberes Fenster 25% des Bildschirms und das untere Fenster 75% des Bildschirms einnimmt.
Sub UnevenSplit() Dim Ht1 As Single Dim Ht2 As Single Dim Ht1a As Single Dim Ht2a As Single Dim Top2 As Single If Windows.Count = 2 Then Windows.Arrange ArrangeStyle:=xlHorizontal Ht1 = Windows(1).Height Ht2 = Windows(2).Height Ht1a = Ht1 / 2 Top2 = Ht1a + 3 Ht2a = Ht2 + Ht1a With Windows(1) .Top = 1 .Height = Ht1a End With With Windows(2) .Top = Top2 .Height = Ht2a End With Windows(1).Activate End If End Sub
Sie sollten sich auch bewusst sein, dass der Wert dieses Makros zum großen Teil davon abhängt, was Sie in Ihren Fenstern sichtbar haben. Wenn Sie die Bänder in ihrer vollen vertikalen Tiefe haben, nimmt dies viel Platz auf dem Bildschirm ein. Tatsächlich kann es so viel dauern, dass das obere Fenster zwar 25% der Bildschirmhöhe einnimmt, jedoch möglicherweise keine Zeilen Ihres Arbeitsblatts anzeigt, da der Platz durch das Menüband und andere Elemente der Benutzeroberfläche belegt wird.
Es gibt zwei mögliche Lösungen. Die erste besteht darin, Bildschirmelemente wie das Menüband zu minimieren. (Doppelklicken Sie auf eine beliebige Multifunktionsleistenregisterkarte, um die Multifunktionsleiste zu minimieren.) Die andere Lösung besteht natürlich darin, dass das Makro unterschiedliche Berechnungen verwendet, um die endgültigen Größen der Fenster zu bestimmen. (Die endgültigen Fensterhöhen befinden sich in den Variablen Ht1a und Ht2a.)
_Hinweis: _
Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der ExcelTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.
ExcelTips ist Ihre Quelle für kostengünstige Microsoft Excel-Schulungen.
Dieser Tipp (13380) gilt für Microsoft Excel 2007, 2010, 2013, 2016, 2019 und Excel in Office 365.