Ja, das könnte gehen..
Zur weiteren Erklärung:
Ich habe eine Userform in der man den Resultattyp auswählt, die Form habe ich noch nicht festgelegt. Entweder werden es Buttons oder eine Liste. Nach der Auswahl wird der Filter aktiviert und der sieht ungefähr so aus (Code hinter einem Plus Button in der Userform) :
Option Explicit
Private N As Integer
Private Sub AddFilter_Click()
Dim lbl As Object
Dim cmbbx As Object
Me.Height = Me.Height + 50
Me.AddFilter.Move Top:=Me.AddFilter.Top + 50
Set lbl = Me.Controls.Add("Forms.Label.1", "Filter" & (N + 1), True)
With lbl.Font
.Name = "Arial"
.Size = 16
.Bold = True
End With
lbl.Caption = "Filter" & (N + 1)
lbl.Top = Me.DefaultFilter.Top + 50 * (N + 1)
lbl.Left = Me.DefaultFilter.Left
Set cmbbx = Me.Controls.Add("Forms.ComboBox.1", "Selection" & N + 1, True)
cmbbx.Top = Me.DefaultSelection.Top + 50 * (N + 1)
cmbbx.Left = Me.DefaultSelection.Left
cmbbx.Width = Me.DefaultSelection.Width
cmbbx.Height = Me.DefaultSelection.Height
Call fillSelection
N = N + 1
End Sub
Also der Hinzufügebutton macht folgendes: Er verschiebt den Hinzufügebutton nach unten und erstellt ein Label und eine Combobox. Das Label wird später durch eine Liste ersetzt, die alle Filter enthält die Zugelassen werden sollen. Danach wird die Combobox des entsprechenden Filters gefüllt.
Jetzt Zum Ablauf:
-User will Daten Beispiel: Datenblattwerte zu Material3
- User startet Applikation logt sich ein und sieht das User Interface
- User hat die Auswahl Zwischen verschiedenen Datentypen darunter Datenblattwerte
- User wählt Datenblattwerte
- User hat die oben beschriebene Maske vor sich
- User wählt Material als Filter und klickt in der Combobox Material3 an
- User möchte weitere Filter hinzufügen, was nicht möglich ist, da bei Datenblättern fix definiert ist was enthalten ist (Dieser Punkt kann nur erfüllt werden wenn die Userform in Abhängigkeit der vorherigen Userform erstellt wird)
- User klickt auf Suchen und weitere Darstellungstoutinen geben ihm das Ergebnis aus
Wie du sagst, ist es möglich die Daten aus der Versteckten Userform über "Userformname.Controlelementname" anzusprechen. Hiermit sollte der Fall also erledigt sein. Wenn einer noch Tips oder Fragen hat nur stellen.
|