Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1196to1200
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 per Code bestücken zur Entwicklungszeit

Userform per Code bestücken zur Entwicklungszeit
Reinhard
Hallo Wissende,
ich weiß durch hier wie ich zur Laufzeit eine UF "bestücken" kann mit Steuerelementen und diese auch positionieren in der UF.
Geht das auch innerhalb des VB-Editors?
Also, Code legt im Editor eine UF an oder nimmt eine schon bestehende und "bestückt" sie?
Wenn man im Editor eine UF exportiert kriegt man eine .frm und eine .frx.
Die .frm ist reiner Text, den könnte man nachbauen und eine derartige Textdatei mit Namen .frm erzeugen.
Unklar wäre mir da nur dieses zu Beginn der :frm:
VERSION 5.00
Begin {C62A69F0-16DC-11CE-9E98-00AA00574A4F} UserForm1
Bei der .frx sieht es anders aus, da ist kein Klartext drin.
Mein Gedanke dazu ist, wenn man das Dateiformat einer .frm kennen würde müßte man doch theoretisch so eine .frx, eine .frm basteln können und dann in den Editor importieren durch Vba-Code!?
Hat sich schon jmd. mal daran versucht?
Danke ^ Gruß
Reinhard

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Form erstellen und bestücken
06.02.2011 15:47:59
Tino
Hallo,
ich habe es mal so gemacht.
Es wird eine Userform (Userform1) erstellt und auf dieser ein Button und eine Textbox eingefügt.
Der Zugriff auf VBA Projekte muss vertraut werden.
Getestet unter xl2007.
Sub UserformErstellen()
Dim oFRM As VBComponent

With ThisWorkbook.VBProject

    'Eventuell löschen wenn vorhanden 
    For Each oFRM In .VBComponents
        If LCase(oFRM.Name) = "userform1" Then
            .VBComponents.Remove oFRM
            DoEvents
            Exit For
        End If
    Next

    With .VBComponents.Add(vbext_ct_MSForm)
        .Name = "UserForm1"
        DoEvents
        
        'Button erstellen 
        With .Designer.Controls.Add("Forms.CommandButton.1")
            .Top = 5: .Left = 5: .Width = 100: .Height = 20
            .Caption = "Ich bin ein Button"
        End With
        
        'TextBox erstellen 
        With .Designer.Controls.Add("Forms.TextBox.1")
            .Top = 30: .Left = 5: .Width = 100: .Height = 20
            .Value = "Ich bin eine TextBox"
        End With
    End With
End With
End Sub
Gruß Tino
Anzeige
AW: Form erstellen und bestücken
06.02.2011 16:23:53
Reinhard
hallo Tino,
danke dir como siempre :-)
Klappt auch in XL2000, ich mußte nur den Verweis setzen auf
Microsoft Visual basic for Applications Extensibility 5.3
Gruß
Reinhard

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige