Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1960to1964
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Userform an Bildschirm anpassen

Userform an Bildschirm anpassen
20.01.2024 16:04:51
EberhardDaniel
Guten Tag

Ich möchte meine UserForm am Bildschirm anpassen. Auf meinem Bildschirm funktioniert dieser Code sehr gut. Jedoch nicht auf dem Laptop von meinem Bruder.
Hat mir jemand einen Code der für jede Bildschirmauflösung funktioniert? Habe recht viel im Netz gefunden. Diese laufen aber nur auf 32 Bit. Meine PC's haben alle 64 Bit.
Besten Dank für Eure Vorschläge.

Freundliche Grüsse Daniel Eberhard



Private Sub UserForm_Initialize()
'Userform wird auf die Größe von Excel gezoomt, wobei die
'die Controls entsprechend gezoomt und zentriert werden.
'Uwe Küstner 20070622
Dim Faktor As Single
Dim X As Single, Y As Single
Dim sngL As Single, sngO As Single, sngR As Single, sngU As Single
Dim oC As MSForms.Control
Faktor = Application.Height / (Me.Height - 20)
If Faktor 4 Then Faktor = 4
Me.Width = Application.Width
Me.Height = Application.Height
sngL = Me.Width
sngO = Me.Height
For Each oC In Me.Controls
sngL = Application.WorksheetFunction.Min(sngL, oC.Left)
sngO = Application.WorksheetFunction.Min(sngO, oC.Top)
sngR = Application.WorksheetFunction.Max(sngR, oC.Left + oC.Width)
sngU = Application.WorksheetFunction.Max(sngU, oC.Top + oC.Height)
Next oC
X = (Me.Width - (sngR * Faktor) - (sngL * Faktor)) / 2 / Faktor
Y = (Me.Height - (sngO * Faktor) - (sngU * Faktor) - 20) / 2 / Faktor
Me.Controls.Move X, Y
Me.Zoom = Faktor * 100
End Sub

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Userform an Bildschirm anpassen
20.01.2024 17:37:37
onur
Und was genau läuft nicht auf dem Laptop?
AW: Userform an Bildschirm anpassen
20.01.2024 19:25:06
volti
Hallo Daniel,

Dein Anliegen ist nicht ausreichend erklärt.

Wie onur schon schrieb:
Was genau funktioniert nicht?

Ich habe hier einen LapTop mit 64 Bit-Excel und der von Dir gezeigte code läuft problemlos bei mir durch und es sieht gut aus.

Gefundenen Code auf 64 Bit umzusetzen ist kein Hexenwerk. Wahrscheinlich müssen nur ein, zwei Änderungen erfolgen.
Meistens ist z.B. dieser Code enthalten, bei dem lediglich das Schlüsselwort PtrSafe zu ergänzen ist.
Declare PtrSafe Function GetSystemMetrics Lib "user32" ( ByVal nIndex As Long) As Long

Allerdings wissen wir nicht, was Du da gefunden hast.

Größeren Code umsetzen geht am besten mit einem API-Viewer, z.B. dieser hier.
https://www.clever-excel-forum.de/Thread-API-Viewer

Gruß
Karl-Heinz
Anzeige
AW: Userform an Bildschirm anpassen
21.01.2024 08:26:48
EberhardDaniel
Guten Morgen zusammen
War gestern etwas im Stress. Das Problem auf dem Notebook ist, dass es mir die Userform nicht richtig auf den Bildschirm ausrichtet.
Die Userform wird rechts und unterhalb des Bildschirms abgeschnitten.
So fehlt zum Beispiel das "X" oben rechts der Userform.

Gruss Daniel Eberhard
AW: Userform an Bildschirm anpassen
21.01.2024 09:03:29
volti
Tja,

bei mir sieht es gut aus (incl. Kreuz oben rechts) und da kann ich aus der Ferne nichts weiter zu beitragen...

Vielleicht hat ja noch jemand anderes eine Idee....

Gruß
Karl-Heinz
AW: Userform an Bildschirm anpassen
21.01.2024 09:49:44
EberhardDaniel
Hallo Karl-Heinz

Danke für die Rückmeldung. Ja das ist immer ein Problem. Bei mir auf dem PC funktioniert es auch wunderbar.
Auf dem Notebook ist Windows 11 installiert und die Bildschirmgrösse anders. Darum kann ich dies natürlich gleich testen.
Vielleicht hat ja jemand eine Idee.

Wünsche einen schönen Sonntag.

Gruss
Daniel Eberhard
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige