Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1640to1644
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 auf ganzen Bildschirm

Userform auf ganzen Bildschirm
22.08.2018 17:12:06
sigi
Hallo,
wenn ich meine UF starte bleibt immer links eine kleine Lücke und läßt sich mit der Maus verschieben.
Nur wenn ich das "Quadrat" auswähle schaltet die UF auf Gesamten Bildschirm und kann auch nicht mehr verschoben werden.
Danke!
Gruß
Sigi
https://www.herber.de/bbs/user/123501.xlsm

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Userform auf ganzen Bildschirm
22.08.2018 17:31:07
Luschi
Hallo sigi,
und wie lautet nun Deine Frage?
fragt sich Luschi
aus klein-Paris
AW: Userform auf ganzen Bildschirm
22.08.2018 17:33:56
sigi
Hallo Luschi,
ich möchte das die UF auf ganzen Bildschirm erscheint, schon beim öffnen.
Nich erst wenn ich das "Quadrat" anclicke
Danke!
Gruß
Sigi
AW: Userform auf ganzen Bildschirm
22.08.2018 17:33:03
Nepumuk
Hallo Sigi,
teste mal:
Option Explicit

Private Declare Function GetSystemMetrics Lib "user32.dll" ( _
    ByVal nIndex As Long) As Long
Private Declare Function FindWindowA Lib "user32.dll" ( _
    ByVal lpClassName As String, _
    ByVal lpWindowName As String) As Long
Private Declare Function GetWindowLong Lib "user32.dll" Alias "GetWindowLongA" ( _
    ByVal hwnd As Long, _
    ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32.dll" Alias "SetWindowLongA" ( _
    ByVal hwnd As Long, _
    ByVal nIndex As Long, _
    ByVal dwNewLong As Long) As Long

Private Const GWL_STYLE = -&H10
Private Const WS_CAPTION = &HC00000
Private Const GC_CLASSNAMEMSUSERFORM = "ThunderDFrame"
Private Const SM_CXSCREEN = 0&
Private Const SM_CYSCREEN = 1&

Private Sub CommandButton1_Click()
    Call Unload(Object:=Me)
End Sub

Private Sub UserForm_Initialize()
    Const PIXEL_TO_POINT As Long = 0.75
    Dim lngHwnd As Long, lngStyle As Long
    lngHwnd = FindWindowA(GC_CLASSNAMEMSUSERFORM, Caption)
    lngStyle = GetWindowLong(lngHwnd, GWL_STYLE)
    lngStyle = lngStyle And Not WS_CAPTION
    Call SetWindowLong(lngHwnd, GWL_STYLE, lngStyle)
    With Me
        .StartUpPosition = 0
        .Top = 0
        .Left = 0
        .Width = GetSystemMetrics(SM_CXSCREEN) * PIXEL_TO_POINT
        .Height = GetSystemMetrics(SM_CYSCREEN) * PIXEL_TO_POINT
    End With
End Sub

Gruß
Nepumuk
Anzeige
AW: Userform auf ganzen Bildschirm
22.08.2018 17:48:15
sigi
Hallo Nepumuk,
zwar wird die UF am gesammten Bildschirm angezeit, jedoch ist die Titelleiste weg.
Und somit auch mein Userform- Menu.
Das mit dem Call unload(object=me) funktioniert nicht. Welche Sub muß ich hierfür schreiben?
Dadurch wird zwar die Userform geschlossen, jedoch das Bol für die Uhr bleibt und man kann nach dem schliessen er UF nichts mehr machen.
Gruß
Sigi
AW: Userform auf ganzen Bildschirm
22.08.2018 18:01:02
Nepumuk
Hallo Sigi,
jedoch das Bol für die Uhr bleibt ?
mit Titelleise so:
Option Explicit

Private Declare Function GetSystemMetrics Lib "user32.dll" ( _
    ByVal nIndex As Long) As Long

Private Const GC_CLASSNAMEMSUSERFORM = "ThunderDFrame"
Private Const SM_CXSCREEN = 0&
Private Const SM_CYSCREEN = 1&

Private Sub CommandButton1_Click()
    Call Unload(Object:=Me)
End Sub

Private Sub UserForm_Initialize()
    Const PIXEL_TO_POINT As Long = 0.75
    With Me
        .StartUpPosition = 0
        .Top = 0
        .Left = 0
        .Width = GetSystemMetrics(SM_CXSCREEN) * PIXEL_TO_POINT
        .Height = GetSystemMetrics(SM_CYSCREEN) * PIXEL_TO_POINT
    End With
End Sub

Gruß
Nepumuk
Anzeige
AW: Userform auf ganzen Bildschirm
22.08.2018 17:36:25
Robert
Hallo Sigi,
Windows-Fenster kann man außer mit einem Klick auf das Quadrat oben rechts noch mit der Tastenfolge ALT Leertaste x maximieren.
Wenn Du in das UserForm_Activate-Makro folgende Codezeile einfügst, wird o. g. Tastenfolge mit der SendKeys-Methode an das Formular übergeben und dieses maximiert dargestellt:
Application.SendKeys ("% x")
Gruß
Robert
AW: Userform auf ganzen Bildschirm
22.08.2018 17:50:18
sigi
Hallo Robert,
Klasse ohne viel rumgetue und es funktioniert.
Danke!
Gruß
Sigi
Gerne und Danke für die Rückmeldung (owT)
22.08.2018 18:10:02
Robert

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige