Top, Left usw. einer Uf nicht setzbar
Reinhard
ich habe eine UF mit Namen "Dateiliste". Im Code der Uf steht:
Private Sub UserForm_Activate()
Call Initialisierung(Dateiliste)
End Sub
In einem Standardmodul steht folgender Code. Es geht, damit ergibt sich alles andere, nur um diese zwei Zeilen:
Dateiliste.Top = 0 ' Funtioniert
.Top = 0 'Fehler 438
Referenziere ich also direkt auf den UF-Namen klappt es, übergebe ich den UF-Namen via Byref an die Prozedur und beziehe mich mit "With" und Punkt darauf, klappt es nicht. Warum, bzw. was muß ich tun, hab ich übersehen?
Die Steuerelemente auf der UF werden im Modul erkannt, warum nicht .Top?
Danke ^ Gruß
Reinhard
Option Explicit
Sub Initialisierung(ByRef UF As UserForm)
Dim Zei As Long, Quelle As String
With ThisWorkbook.Worksheets(Application.UserName & "_Dateiliste")
Zei = .Cells(.Rows.Count, 1).End(xlUp).Row
If Zei = 1 Then Exit Sub
.Range("A:E").Copy Destination:=.Range("H1")
Call Kuerzen(4)
Quelle = "'[" & .Parent.Name & "]" & Application.UserName & "_Dateiliste'!H2:L" & Zei
End With
With UF
.lbListe.RowSource = Quelle
Dateiliste.Top = 0
' .Top = 0
' .Left = 0
' .Width = Application.Width
' .Height = Application.Height
' .lbListe.Width = .Width
' .lbListe.Height = .Height - 50
' .cbAbbrechen.Top = .Height - 47
' .cbOeffnen.Top = .Height - 47
' .cbHilfe.Left = Application.Width - 120
' .cbSortiereName.Left = 19
' .cbSortiereDatum.Left = 114
' .cbSortierungAufheben.Left = 350
' .cbSortierePfad.Left = 166
' .cbSortiereBemerkung.Left = 566
' .Label2.Top = .Height - 46
.cbSortiereName.Caption = "A - Z"
.cbSortiereDatum.Caption = "A - Z"
.cbSortierungAufheben.Caption = "A - Z"
.cbSortierePfad.Caption = "A - Z"
.cbSortiereBemerkung.Caption = "lfd. Nr. 1 _ X"
End With
End Sub