Visual Basic für Applikationen (VBA) in Excel ermöglicht es Ihnen, verschiedene Aufgaben und Aktivitäten zu automatisieren und ist damit ein leistungsfähiges Werkzeug für Entwickler und Benutzer. Ein wichtiger Aspekt der Programmierung in VBA ist die Arbeit mit der grafischen Benutzeroberfläche (GUI), einschließlich der Erkennung und Festlegung der Größe von Fenstern und Steuerelementen auf dem Bildschirm.
Es kann nützlich sein, die Bildschirmgrößen in VBA Excel herauszufinden, z. B. wenn Sie Programme mit anpassungsfähiger Oberfläche entwickeln oder Berichte mit geeigneter Breite und Höhe erstellen. In diesem Artikel werden die Anweisungen und Codebeispiele erläutert, mit denen Sie die Bildschirmgrößen in VBA Excel definieren können.
In VBA für Excel stehen verschiedene Möglichkeiten zur Verfügung, um die Bildschirmgröße zu ermitteln. Eine davon ist die Verwendung der Eigenschaften des Application-Objekts. Zum Beispiel eine Eigenschaft Application.Width gibt die Breite des Hauptbildschirms und die Eigenschaft zurück Application.Height - Hoehe. Eine andere Möglichkeit besteht darin, die Methode zu verwenden GetSystemMetrics aus der User32-Bibliothek.dll. Diese Methode gibt verschiedene Systeminformationen zurück, einschließlich der Größe des Bildschirmarbeitsbereichs.
Beispielcode:
Dim screenWidth As Integer
Dim screenHeight As Integer
screenWidth = Application.Width
screenHeight = Application.Height
MsgBox "Bildschirmbreite: " & screenWidth & " Pixel"
MsgBox "Bildschirmhöhe: " & screenHeight & " Pixel"
In diesem Beispiel verwenden wir die Eigenschaften Application.Width und Application.Height, um die Bildschirmgröße zu bestimmen. Dann geben wir die resultierenden Werte mit der MsgBox-Funktion aus. Auf diese Weise können Sie mit VBA flexiblere und benutzerfreundlichere Benutzeroberflächen in Excel erstellen, indem Sie auf die Bildschirmgrößen zugreifen.
Wie bekomme ich die Bildschirmgrößen in VBA Excel?
Wenn Sie mit VBA Excel arbeiten, müssen Sie manchmal die Bildschirmgrößen abrufen. Dies kann beispielsweise nützlich sein, wenn Sie eine Benutzeroberfläche erstellen möchten, die für unterschiedliche Bildschirmauflösungen optimiert werden muss. Es gibt mehrere Möglichkeiten, Bildschirmgrößen in VBA Excel zu erhalten.
Eine Möglichkeit besteht darin, das Application-Objekt zu verwenden:
Sub GetScreenSize()Dim ScreenWidth As IntegerDim ScreenHeight As IntegerScreenWidth = Application.WidthScreenHeight = Application.HeightMsgBox "Ширина экрана: " & ScreenWidth & " пикселей" & vbNewLine & "Высота экрана: " & ScreenHeight & " пикселей"End Sub
Dieser Code zeigt eine Nachricht mit der Breite und Höhe des Bildschirms in Pixeln an.
Wenn Sie die Bildschirmgrößen in Zentimetern oder Zoll erhalten möchten, können Sie die GetSystemMetrics-Methode verwenden:
Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As LongSub GetScreenSize()Dim ScreenWidth As LongDim ScreenHeight As LongScreenWidth = GetSystemMetrics(0)ScreenHeight = GetSystemMetrics(1)MsgBox "Ширина экрана: " & ScreenWidth & " сантиметров" & vbNewLine & "Высота экрана: " & ScreenHeight & " сантиметров"End Sub
In diesem Beispiel wird die GetSystemMetrics-Funktion verwendet, die die Bildschirmgrößen in Pixeln basierend auf dem übergebenen nIndex-Parameter zurückgibt. Die Übergabe von Parameter 0 gibt die Breite des Bildschirms zurück, während die Übergabe von Parameter 1 die Höhe des Bildschirms darstellt.
Jetzt wissen Sie, wie Sie die Bildschirmgrößen in VBA Excel erhalten. Diese Methoden können bei der Entwicklung der Benutzeroberfläche oder bei der Arbeit mit unterschiedlichen Bildschirmauflösungen hilfreich sein.
Anweisungen zum Definieren der Bildschirmgröße in VBA
In VBA (Visual Basic for Applications) können Sie die Größe des aktuellen Bildschirms mithilfe eines Objekts bestimmen Application. Um die Breite und Höhe des Bildschirms zu erhalten, müssen Sie die Eigenschaften verwenden ScreenWidth und ScreenHeight dieses Objekt.
Im Folgenden finden Sie einen Beispielcode, mit dem Sie die Bildschirmgrößen definieren und in einem Excel-Arbeitsblatt anzeigen können:
Sub GetScreenSize()Dim screenWidth As LongDim screenHeight As LongscreenWidth = Application.ScreenWidthscreenHeight = Application.ScreenHeightSheets("Sheet1").Range("A1") = "Ширина экрана:"Sheets("Sheet1").Range("B1") = screenWidthSheets("Sheet1").Range("A2") = "Высота экрана:"Sheets("Sheet1").Range("B2") = screenHeightEnd Sub
In diesem Beispiel wird eine GetScreenSize-Prozedur erstellt, die die Variablen screenWidth und screenHeight initialisiert. Diese Variablen werden dann mit den screenWidth- und screenHeight-Eigenschaften des Application-Objekts den Bildschirmbreite- und -höhe-Werten zugewiesen.
Als nächstes werden die Werte für die Breite und Höhe des Bildschirms im Arbeitsblatt "Sheet1" in den Zellen A1 bzw. B1 angezeigt. Der Text "Bildschirmbreite:" und "Bildschirmhöhe:" werden zur Vereinfachung auch in den Zellen A1 und A2 ausgegeben.
Sie können den Code entsprechend Ihren Anforderungen ändern, z. B. Werte in ein anderes Arbeitsblatt oder in andere Zellen ausgeben.