ich versuche aktuell eine Userform mit Werten bereits beim öffnen vor auszuwählen.
Hierfür schaue ich mir an , wer die Datei öffnet und setzte hierfür Public Variable.
Private Sub Workbook_Open()
Dim aktUser As String
aktUser = UCase(Environ("UserName"))
Call Userauswahl(aktUser)
End Sub
Danach schreibe ich in einem Modul:Option Explicit
Public User As String
Public p_ListBox1 As Byte
Public p_ListBox2 As Byte
Sub Userauswahl(User)
Select Case User
Case "Curly":
p_ListBox1 = 1
p_ListBox2 = 0
Case Else
p_ListBox1 = 0
p_ListBox2 = 0
End Select
End Sub und das versuche ich dann in der UF zu übernehmen:
Private Sub UserForm_Activate()
With Me.ListBox1
.Clear '*** löschen, falls schon was drinsteht ***
.AddItem "A"
.AddItem "B"
.AddItem "C"
.Selected(p_ListBox1) = True
End With
With Me.ListBox2
.Clear '*** löschen, falls schon was drinsteht ***
.AddItem "11"
.AddItem "22"
.Selected(p_ListBox2) = True
End With
If p_ListBox1 = 0 And p_ListBox2 = 0 Then
With Me.ListBox3
.Clear '*** löschen, falls schon was drinsteht ***
.AddItem "aa"
.AddItem "bb"
.AddItem "cc"
End With
End If
If p_ListBox1 = 0 And p_ListBox2 = 1 Then
With Me.ListBox3
.Clear '*** löschen, falls schon was drinsteht ***
.AddItem "dd"
.AddItem "ee"
.AddItem "ff"
End With
End If
If p_ListBox1 = 1 And p_ListBox2 = 0 Then
With Me.ListBox3
.Clear '*** löschen, falls schon was drinsteht ***
.AddItem "gg"
.AddItem "hh"
.AddItem "ii"
.AddItem "jj"
End With
End If
If p_ListBox1 = 2 And p_ListBox2 = 0 Then
With Me.ListBox3
.Clear '*** löschen, falls schon was drinsteht ***
.AddItem "kk"
.AddItem "ll"
.AddItem "mm"
End With
End If
End Sub
Wenn ich dann aus der UF das Sub Speichern aufrufe:Übernimmt er nur die Listbox1 und Listbox3(wird per Hand angeklickt!),
die Listbox2 ist leer.
Kann mir vielleicht jemand helfen?
Danke Curly