Zum Hauptinhalt springen

Position von VBA Excel UserForm auf dem Bildschirm: Grundlegende Methoden und bewährte Methoden

Wenn Sie in Excel VBA arbeiten, müssen Sie möglicherweise ein benutzerdefiniertes Formular erstellen, das zum Eingeben von Daten oder zum Anzeigen von Informationen für den Benutzer verwendet wird. Ein wichtiger Aspekt bei der Arbeit mit UserForm besteht darin, seine Position auf dem Bildschirm zu kontrollieren.

In diesem Artikel werden die grundlegenden Methoden und Best Practices für die Positionsverwaltung von UserForm erläutert, um eine benutzerfreundliche und effiziente Benutzeroberfläche zu erstellen.

  1. Links und oben: Mit den Eigenschaften Left und Top können Sie die Koordinaten der oberen linken Ecke des UserForm relativ zum Bildschirm festlegen. Wenn Sie beispielsweise ein UserForm in der oberen linken Ecke des Bildschirms platzieren möchten, können Sie die Werte Left = 0 und Top = 0 festlegen.
  2. StartUpPosition: Mit dieser Eigenschaft können Sie festlegen, wie die Position eines UserForm beim Öffnen automatisch ermittelt wird. Gültige Werte sind 0 (Manual), 1 (CenterScreen), 2 (CenterOwner).
  3. Move: Mit der Move-Methode können Sie die UserForm an bestimmte Koordinaten auf dem Bildschirm verschieben. Sie können diese Methode beispielsweise verwenden, um das Aussehen von UserForm zu animieren.

Richtlinien für die Positionsverwaltung von UserForm:

  1. Berücksichtigen Sie die Bildschirmgrößen des Benutzers. Berücksichtigen Sie beim Erstellen eines UserForm unterschiedliche Bildschirmauflösungen und -größen, damit das UserForm immer für den Benutzer sichtbar ist.
  2. Verwenden Sie die StartUpPosition-Eigenschaft, um die Startposition von UserForm zu definieren. Wenn Sie beispielsweise ein UserForm nur zum Anzeigen von Informationen verwenden, kann es hilfreich sein, es in der Mitte des Bildschirms zu platzieren.
  3. Steuern Sie die Position von UserForm abhängig von anderen Elementen der Benutzeroberfläche. Wenn UserForm mit anderen Excel-Elementen interagiert, legen Sie die Position relativ zu diesen Elementen fest.

Festlegen der UserForm-Position mithilfe der Eigenschaft "StartupPosition"

Die Eigenschaft "StartupPosition" kann einen von vier Werten haben:

  • 0 - Manual (Manuell): Die Position des UserForm wird mithilfe der Move-Methode manuell ermittelt.
  • 1 - CenterOwner (In der Mitte des übergeordneten Fensters): Das UserForm befindet sich in der Mitte des übergeordneten Fensters. Wenn kein übergeordnetes Fenster angegeben ist, wird das UserForm in der Mitte des Bildschirms angezeigt.
  • 2 - CenterScreen (In der Mitte des Bildschirms): Das UserForm wird in der Mitte des Bildschirms angezeigt.
  • 3 - WindowsDefault (Standard für Windows): Das UserForm befindet sich entsprechend den Einstellungen des Windows-Betriebssystems.

Sie können den folgenden Code verwenden, um den Wert der Eigenschaft "StartupPosition" festzulegen:

In diesem Fall befindet sich das UserForm "UserForm1" in der Mitte des übergeordneten Fensters (oder in der Mitte des Bildschirms, wenn kein übergeordnetes Fenster angegeben ist).

Die Verwendung der Eigenschaft "StartupPosition" macht es einfach und bequem, die Position eines UserForm beim Öffnen zu steuern, was besonders nützlich ist, wenn Sie eine Benutzeroberfläche in Excel VBA erstellen.

Verwenden der Eigenschaften "Left" und "Top" zum manuellen Anpassen des UserForm-Speicherorts

In Excel VBA ist ein UserForm ein Formular, in dem Sie verschiedene Elemente der Benutzeroberfläche wie Schaltflächen, Textfelder usw. platzieren können. Wenn ein Benutzer ein UserForm öffnet, wird es an einer bestimmten Stelle auf dem Bildschirm angezeigt.

Sie können die Eigenschaften "Left" und "Top" verwenden, um den Speicherort von UserForm manuell anzupassen. Mit der Eigenschaft "Left" können Sie den Abstand vom linken Bildschirmrand zum linken Rand des UserForm festlegen, und mit der Eigenschaft "Top" wird der Abstand vom oberen Bildschirmrand zum oberen Rand des UserForm festgelegt.

Sie können den folgenden Code verwenden, um bestimmte Werte für diese Eigenschaften festzulegen:

Private Sub UserForm_Initialize()Me.Left = 100Me.Top = 100End Sub

In diesem Beispiel wird die UserForm so geöffnet, dass die obere linke Ecke des UserForm an einem Koordinatenpunkt (100, 100) relativ zur oberen linken Ecke des Bildschirms liegt.

Sie können auch die Eigenschaften "Left" und "Top" verwenden, um den Speicherort des UserForm basierend auf den angegebenen Bedingungen oder der Benutzerinteraktion dynamisch anzupassen. Sie können beispielsweise den Wert dieser Eigenschaften im Ereignishandler einer Schaltfläche ändern oder die Werte anderer Elemente im Formular ändern.

Beachten Sie, dass die Werte der Eigenschaften "Left" und "Top" negativ sein können, sodass Sie das UserForm außerhalb des sichtbaren Bereichs des Bildschirms platzieren können. In diesem Fall kann der Benutzer die Bildlaufleisten verwenden, um den gesamten Inhalt von UserForm anzuzeigen.

Mit den Eigenschaften "Links" und "Oben" können Sie die Position von UserForm auf dem Bildschirm flexibler anpassen, um die spezifischen Bedürfnisse und Vorlieben der Benutzer zu erfüllen.

Automatische UserForm-Zentrierung mit der "CenterScreen" -Methode

Die Methode "CenterScreen" richtet das UserForm beim Öffnen automatisch an der Mitte des Bildschirms aus. Dies ist besonders nützlich, wenn sich die Größe eines UserForm dynamisch ändert oder im Voraus unbekannt ist.

Um die "CenterScreen" -Methode in VBA Excel zu verwenden, müssen Sie einige einfache Schritte ausführen:

  1. Öffnen Sie den integrierten VBA-Editor, indem Sie ALT + F11 drücken.
  2. Wählen Sie das Projekt, in dem sich UserForm befindet, im linken Fenster "VBA-Projekte" aus.
  3. Doppelklicken Sie auf ein UserForm, um es zu öffnen.
  4. Klicken Sie mit der rechten Maustaste auf UserForm und wählen Sie Code aus dem Kontextmenü aus.
  5. Geben Sie den folgenden Code in das UserForm-Modul ein:
Private Sub UserForm_Activate()Me.CenterScreenEnd Sub

Dieser Code wird automatisch jedes Mal ausgeführt, wenn ein UserForm aktiviert wird. Es ruft die "CenterScreen" -Methode für die aktuelle UserForm-Instanz auf, die sie auf dem Bildschirm zentriert.

Mit der "CenterScreen" -Methode können Sie die UserForm automatisch auf dem Bildschirm zentrieren, ohne die Position und die Abmessungen manuell berechnen zu müssen. Dies macht den Code kompakter und einfacher zu pflegen und in Zukunft zu ändern.

Es ist wichtig zu beachten, dass die "CenterScreen" -Methode das UserForm auf dem Startbildschirm zentriert, wenn Sie mehrere Monitore haben. Wenn die UserForm auf einem bestimmten Monitor zentriert werden soll, können Sie andere Methoden wie "CenterOwner" oder "CenterParent" verwenden.

MethodeDie Beschreibung
"CenterScreen"Zentriert das UserForm auf dem Startbildschirm
"CenterOwner"Zentriert ein UserForm relativ zum übergeordneten Fenster
"CenterParent"Zentriert das UserForm relativ zum übergeordneten Fenster

Mit der "CenterScreen" -Methode in VBA Excel können Sie eine professionellere und benutzerfreundlichere Benutzeroberfläche erstellen, indem Sie sicherstellen, dass die UserForm auf dem Bildschirm zentriert wird.

Vermeiden Sie die Überlappung von Schnittstellenelementen mit der optimalen Positionierung von UserForm

Beim Entwerfen von benutzerdefinierten Formularen (UserForm) in VBA Excel ist es wichtig, die optimale Position für jedes Schnittstellenelement zu bestimmen, um Überlappungen zu vermeiden und die Benutzerfreundlichkeit für die Benutzer zu gewährleisten.

Eine Möglichkeit, die Schnittstellenelemente in einer UserForm optimal zu positionieren, besteht darin, das Prinzip der "minimalen Überlappung" zu verwenden. Bei diesem Ansatz sollten Sie die Elemente der Benutzeroberfläche so positionieren, dass sie sich nur minimal überlappen und die Benutzer mit jedem Element interagieren können.

Um eine optimale Positionierung von UserForm-Elementen zu erreichen, können Sie Methoden wie:

  • Layouts: In Excel-VBA können Sie Layouts verwenden, um UserForm-Elemente automatisch zu positionieren. Mit Layouts können Sie Elemente der Benutzeroberfläche gruppieren und automatisch in einer bestimmten Reihenfolge oder einem Raster anordnen. Dies vereinfacht die Aufgabe, Elemente optimal zu positionieren und verbessert die Lesbarkeit und das Verständnis der Benutzeroberfläche.
  • Gitterausrichtung (Grid Alignment): Die Möglichkeit, ein Raster zu verwenden, hilft Ihnen, UserForm-Elemente an bestimmten Koordinaten oder Zellen auszurichten. Dadurch können Sie regelmäßige und symmetrische Schnittstellen erstellen, die von Benutzern leichter wahrgenommen werden und ihre Erfahrung mit dem Formular verbessern.
  • Verwenden von Einrückungen (Margins): Die Einrückung zwischen UserForm-Elementen verhindert, dass sich diese überlappen und verbessert die visuelle Struktur der Benutzeroberfläche. Optimale Einrückungen helfen Benutzern, sich besser am Formular zu orientieren und Fehler bei der Interaktion mit Elementen zu reduzieren.
  • Dynamische Positionierung (Dynamic Positioning): Bei der Entwicklung komplexer Userformulare kann es erforderlich sein, Elemente basierend auf den Bedingungen oder Aktionen des Benutzers dynamisch zu positionieren. Dadurch können Sie den Platzbedarf auf dem Bildschirm optimieren und mögliche Überlappungen von Schnittstellenelementen reduzieren.

Die korrekte Positionierung der Schnittstellenelemente auf UserForm hilft Ihnen, eine bequemere und intuitivere Benutzerinteraktion mit dem Formular zu erstellen. Dies verbessert die Effizienz und Zufriedenheit der Benutzer bei der Arbeit mit einer Excel-basierten VBA-Anwendung.