VBA-Programmierung in Microsoft Excel

Tutorial: Excel-Beispiele

UserForm unter Berücksichtigung der Auflösung maximieren

Gruppe

Dialog

Bereich

UserForm

Thema

UserForm unter Berücksichtigung der Auflösung maximieren

Problem

Eine UserForm soll nach Auslesen der Bildschirmauflösung maximiert werden.

Lösung

Den nachfolgenden Code in die benannten Module einfügen.




StandardModule: basMain

Declare Function GetDeviceCaps Lib "gdi32" (ByVal hdc As Long, _
    ByVal nIndex As Long) As Long
Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, _
    ByVal hdc As Long) As Long

Const HORZRES = 8
Const VERTRES = 10

Function ScreenResolution()
   Dim lRval As Long
   Dim lDc As Long
   Dim lHSize As Long
   Dim lVSize As Long
   lDc = GetDC(0&)
   lHSize = GetDeviceCaps(lDc, HORZRES)
   lVSize = GetDeviceCaps(lDc, VERTRES)
   lRval = ReleaseDC(0, lDc)
   ScreenResolution = lHSize & "x" & lVSize
End Function

Sub CallForm()
   frmFullSize.Show
End Sub

ClassModule: frmFullSize

Private Sub CommandButton1_Click()
   Unload Me
End Sub

Private Sub UserForm_Initialize()
   Dim sSize As String
   sSize = ScreenResolution
   With Me
      .Width = Left(sSize, InStr(sSize, "x") - 1)
      .Height = Right(sSize, Len(sSize) - _
         InStr(sSize, "x"))
      .Left = 0
      .Top = 0
   End With
End Sub

    


Beiträge aus dem Excel-Forum zu den Themen Dialog und UserForm