Thema Datum  Von Nutzer Rating
Antwort
09.04.2024 11:13:34 Gast92378
NotSolved
Blau Userform als Variable
09.04.2024 21:49:59 xlKing
NotSolved
09.04.2024 22:32:41 Gast50744
Solved
10.04.2024 00:03:47 Gast92378
Solved
11.04.2024 09:43:36 Gast10678
NotSolved

Ansicht des Beitrags:
Von:
xlKing
Datum:
09.04.2024 21:49:59
Views:
47
Rating: Antwort:
  Ja
Thema:
Userform als Variable

Hallo,

deine Beschreibung ist zwar umfangreich aber nicht wirklich ausreichend. Was genau willst du denn machen? Willst du das Userform im Entwicklungsmodus bearbeiten oder wird das Userform bereits zur Laufzeit auf dem Bildschirm angezeigt wenn du das Frame verändern willst?

Im ersten Fall könntest du deinen Code wie folgt aufbauen:

ThisWorkbook.VBProject.VBComponents("Userform1").Designer.Controls("Frame1").Height = 15

wobei du "UserForm1" durch die Variable mit deinem Userformnamen anpassen kannst. Wichtig dabei. Jedes Userform im Projekt muss ein Control mit dem Namen deines übergebenen Frames haben. Wenn dem nicht so ist kann das zu Laufzeitfehlern führen.

Falls das bzw die Userforms bereits angezeigt werden dann evtl. so:

Sub Test()
  Framehoehe "UserForm1", "Frame1"
End Sub

Sub Framehoehe(ufm As String, frm As String)
   
  UserForm1.Show vbModeless
  UserForm2.Show vbModeless
  For Each uf In VBA.UserForms
    If uf.Name = ufm Then
      uf.Controls(frm).Height = 30
    End If
  Next uf

End Sub

Wichtig: Die Userforms müssen laufen um in der VBA.Useforms-Auflistung gelistet zu sein. Diese Auflistung ist 0-basiert. D.h. das erste Userform hat die Nr. 0. Die Userforms-Auflistung nimmt keine Namen sondern nur Nummern an. Daher die Prüfung über die For Each Schleife.

Gruß Mr. K.
 

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
09.04.2024 11:13:34 Gast92378
NotSolved
Blau Userform als Variable
09.04.2024 21:49:59 xlKing
NotSolved
09.04.2024 22:32:41 Gast50744
Solved
10.04.2024 00:03:47 Gast92378
Solved
11.04.2024 09:43:36 Gast10678
NotSolved