HERBERS Excel-Forum - das Archiv
Frame in Userform nicht mehr sichtbar.
LuBe

Hallo
habe in EX-VBA ein Userform angelegt und mehrere Objekte darin, darunetr auch mehrer Frames.
Habe nun das Problem das ein Frame mit mehreren checkboxen im Entwurf und zu Laufzeit nicht mehr sichtbar ist. Weshalb kann ich nicht mehr nachvollziehen.
Der Frame und mit den Checkboxen wird in der Auflistung der Eigenschaften des Userforms nicht mehr aufgeführt. Er ist auch nicht unter den andern Frames. Auf der Codeseite in der linken oberen Combo sind der Frame und die Checkboxen aber noch aufgeführt. Wenn ich versuche einen neuen Frame mit dem gleichen Namen anzulegen gibts eine Fehlermeldung "Eigenschaft Name konnte nicht gesetzt werden. Mehrdeutiger Name.". Er ist also noch vorhanden nur nicht sichtbar.
Im Debuggmode im Einzelschrit wird im Lokalenfenster der Frame noch aufgeführt und ich sehe dass der Topwert einen Minuswert von -54 hat. Hab schon versucht hier dann einen Wert von 50 einzutragen was auch geht aber es hat keinen Einfluß. Über den Programmcode kann ich die den Zustand der checkboxen noch abfragen und setzen.
Hat jemand ein Idee wie ich den Frame wieder im Formular in den sichtbaren bereich bekomme?
Gruß
LuBe

AW: Frame in Userform nicht mehr sichtbar.
Josef

Hallo ?,
Vielleicht hilft's.
In ein allgemeines Modul der Datei, Name des UF anpassen.
' **********************************************************************
' Modul: Modul3 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub resetControl()
  Dim objCtrl As Object, objUF As Object, objProject As Object
  
  Set objProject = Application.VBE.VBProjects(ThisWorkbook.VBProject.Name)
  
  Set objUF = objProject.VBComponents("UserForm1") 'Name des UF - Anpassen!
  
  For Each objCtrl In objUF.Designer.Controls
    If objCtrl.Top < 0 Then objCtrl.Top = 1
    If objCtrl.Left < 0 Then objCtrl.Left = 1
  Next
  
  Set objUF = Nothing
  Set objProject = Nothing
End Sub

Gruß Sepp

AW: Frame in Userform nicht mehr sichtbar.
Ludwig

Hallo Sepp,
zuerst mal danke für die Antwort. Konnte damit den Topwert auf 55 setzen. Für das Problem hats aber nicht geholfen der Frame mit seinen Checkboxen wird nicht angezeigt. Hast noch ne Idee?
Gruß
Ludwig
AW: Frame in Userform nicht mehr sichtbar.
Josef

Hallo Ludwig,
wenn das nichts nützt, dann musst die das UF wohl neu erstellen.
' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub resetControl()
  Dim objCtrl As Object, objUF As Object, objProject As Object
  
  Set objProject = Application.VBE.VBProjects(ThisWorkbook.VBProject.Name)
  
  Set objUF = objProject.VBComponents("UserForm1") 'Name des UF - Anpassen!
  
  On Error Resume Next
  
  For Each objCtrl In objUF.Designer.Controls
    With objCtrl
      If .Top < 0 Then .Top = 1
      If .Left < 0 Then .Left = 1
      .Visible = True
      .ZOrder 0
      .Zoom = 100
    End With
  Next
  
  Set objUF = Nothing
  Set objProject = Nothing
End Sub

Gruß Sepp

AW: Frame in Userform nicht mehr sichtbar.
Ludwig

Hallo Sepp,
hat leider nichts gebracht, habe das Form zwischenzeitlich neu gemacht.
Man wüste halt gerne wie so was zustande kommt. Hab einiges dazu gelernt, auch Dank Deiner Hilfe.
Gruß und guten Rutsch
Ludwig