Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Userform Vollbild
#1
Hi,
habe folgende Frage:

Ich habe eine Userform entworfen die bei meinem Bildschirm und meiner Auflösung ca. die hälfte des Bildschirms einnimmt. Angenommen ich wollte diese nun "strecken", wie man den Begriff von MS so schön kennt. Dass das Ergebnis aufgrund unterschiedliche Seitenverhältnisse von Userform, meinem Bildschirm und anderen Bildschirmen variiert ist mir klar, jedoch frage ich mich ob es sich nicht maximieren lässt "bis es am Bildrand anstößt" und den Rest ohne Inhalt auffüllt.
Bei meiner Suche bin ich über diesen Code gestolpert:

Code:
Private Sub UserForm_Initialize()

    With Application

        .WindowState = xlMaximized

        Zoom = Int(.Width / Me.Width * 100)

        Width = .Width

        Height = .Height

    End With

End Sub

Auch wenn es nicht sonderlich schön aussieht, macht er zunächst was ich will, aus dieser Ansicht:
   
Wird diese:
   
Wenn ich jedoch einen Haken markiere, wie im Bild passiert das:
   

Hat jemand eine Idee wieso?

Gruß und danke im Voraus
Antworten Top
#2
Hallo Fupi,

dann lass Zoom einfach weg:
Private Sub UserForm_Initialize()
   With Application
       .WindowState = xlMaximized
       Width = .Width - 5
       Height = .Height - 5
   End With
End Sub
Gruß Uwe
Antworten Top
#3
Hey Uwe,
danke für die Antwort. in dem Fall wird permanent das Ergebnis in Bild 3 ausgegeben. Wäre es auch möglich das Ergebnis aus Bild 2 zu erreichen? Im Prinzip wäre mir der Zoom fast lieber. Alternativ die Version mit deinem Code, aber zentrierter Useform?`
Gruß
Antworten Top
#4
Hallo Fupi,

dann doch so wie Du es schon hattest. Jetzt nur noch mit Fehlerausschluss:
Private Sub UserForm_Initialize()
  With Application
      .WindowState = xlMaximized
      Zoom = .Max(10, .Min(400, .Width / Me.Width * 100, .Height / Me.Height * 100))
      Me.Width = .Width - 60
      Me.Height = .Height - 60
  End With
End Sub
Dass sich die Größe dann während des Ausfüllens verändert, kann ich bei mir nicht nachvollziehen.

Gruß Uwe
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste