In einem Userform bestehend aus einer Multipage mit mehrern Tabs sollen auf einem der Tabs alle Bilder angezeigt werden, die sich in einem bestimmten Ordner befinden. Die benötigten Bilder sollen ausgewählt werden können.
Verstehe ich folgendermaßen (allgemeines Beispiel):
Option Explicit
Private Sub ListBox1_Change()
If ListBox1.ListIndex < 0 Then Exit Sub
Call MsgBox(ListBox1.List(ListBox1.ListIndex, 1))
End Sub
Private Sub UserForm_Initialize()
With ListBox1
.ColumnCount = 1
.ColumnHeads = False
.ListStyle = fmListStyleOption
.MultiSelect = fmMultiSelectMulti
End With
Call FillListBox(ListBox1, "X:\Images\")
End Sub
Private Sub FillListBox(ListBox As MSForms.ListBox, ByVal ImagePath As String)
If Right$(ImagePath, 1) <> "\" _
Then ImagePath = ImagePath & "\"
Call ListBox.Clear
Dim strFile As String
Dim strFileExtension As String
strFile = Dir$(ImagePath) 'erste Datei
Do Until strFile = ""
If InStrRev(strFile, ".") > 0 Then
'Dateiendung extrahieren
strFileExtension = Right$(strFile, Len(strFile) - InStrRev(strFile, "."))
Else
strFileExtension = ""
End If
Select Case LCase$(strFileExtension)
Case "bmp", "jpg", "png" '< erlaubte Dateiendungen
Call ListBox.AddItem(strFile)
'schreibe vollständigen Dateipfad in die zweite Spalte
ListBox.List(ListBox.ListCount - 1, 1) = ImagePath & strFile
Case Else
'alles andere
End Select
strFile = Dir$() 'nächste Datei
Loop
End Sub
Ob ein Element (Item) ausgewählt wurde, kann man mit
ListBox1.Selected(0) 'erstes Element ausgewählt worden?
ListBox1.Selected(1) 'zweites Element ausgewählt worden?
'...
ListBox1.Selected(ListBox1.ListCount - 1) 'letztes Element ausgewählt worden?
abfragen.
Beim Einsetzen der Daten aus dem Userform in eine Datei sollen die ausgewählten Bilder mit eingefügt werden.
Verstehe nicht was damit gemeint ist.
|