Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1720to1724
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

Dateinamen auswählen ComboBox

Dateinamen auswählen ComboBox
08.11.2019 13:34:55
Thorsten
Hallo zusammen.
Ich habe folgenden Code, der mir die ComboBox mit Dateinamen aus einem Ordner füllt.
Leider kann ich keinen Dateinamen per "Klick" auswählen und in eine Zelle schreiben.
Was muss ich anpassen (bin VBA-Laie).
Lieben dank bereits im Voraus!

Private Sub ComboBox3_DropButtonClick()
Const csPATH As String = "C:\Users\XXX\XXX\XXX\Bilder\"
Dim sDatei As String
ComboBox3.Clear
sDatei = Dir(csPATH & "\*.*")
With ComboBox3
.Clear
Do Until sDatei = ""
.AddItem Left(sDatei, Len(sDatei) - 4)
sDatei = Dir
Loop
End With
End Sub

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateinamen auswählen ComboBox
08.11.2019 13:45:16
Werner
Hallo Thorsten,
nimm das
Private Sub ComboBox3_GotFocus()

Event.
Gruß Werner
AW: Dateinamen auswählen ComboBox
08.11.2019 13:58:08
fcs
Hallo Thorsten,
verwende die GotFocus-Ereignisprozedur um die Dateinamen in die Auswahlliste einzulesen und die Click-Ereignisprozedur um den ausgewählten Wert in die Zelle zu schreiben.
LG
Franz
Private Sub ComboBox3_Click()
'beim Klick auf einen Wert in Zelle B3 eintragen
Range("B3") = ComboBox3.Value
End Sub
Private Sub ComboBox3_GotFocus()
'Beim Anklicken der Combobox die Auswahlliste erstellen
Const csPATH As String = "C:\Users\XXX\XXX\XXX\Bilder\" 'Achtung "\" am Ende _
weglassen, da "\" in Dir-Anweisung angefügt wird.
Dim sDatei As String
ComboBox3.Clear
sDatei = Dir(csPATH & "\*.*")
With ComboBox3
.Clear
Do Until sDatei = ""
.AddItem Left(sDatei, Len(sDatei) - 4)
sDatei = Dir
Loop
End With
End Sub

Anzeige
AW: Dateinamen auswählen ComboBox
08.11.2019 14:52:52
Thorsten
Hallo Franz,
das funktioniert ja echt super.
Lieben Dank!
Und dann auch noch so schenll!
Wie kann ich das ganze denn anpassen, wenn ich 17 Comboboxen mit der selben Information füllen muss/möchte?
AW: Dateinamen auswählen ComboBox
08.11.2019 15:12:44
fcs
Hallo Thorsten,
Wenn du bei Auswahl von Combobox3 auch bei allen andern Comboxen die Liste anfügen willst,
dann etwa wie folgt.
LG
Franz
Private Sub ComboBox3_GotFocus()
'Beim Anklicken der Combobox die Auswahlliste erstellen
'  Const csPATH As String = "C:\Users\XXX\XXX\XXX\Bilder\" 'Actung "\" am Ende weglassen, da "\" _
in Dir-Anweisung angefügt wird.
Const csPATH As String = "C:\Lokale Daten (D)\Test" 'Actung "\" am Ende weglassen, da "\" in  _
Dir-Anweisung angefügt wird.
Dim sDatei As String
ComboBox3.Clear
sDatei = Dir(csPATH & "\*.*")
With ComboBox3
.Clear
Do Until sDatei = ""
.AddItem Left(sDatei, Len(sDatei) - 4)
sDatei = Dir
Loop
End With
Me.ComboBox4.List = Me.ComboBox3.List
Me.ComboBox5.List = Me.ComboBox3.List
'.... usw.
End Sub

Anzeige
AW: Dateinamen auswählen ComboBox
08.11.2019 16:09:11
Thorsten
Hallo Franz,
das klappt alles einfach super. Ich bin schier begeister, wie einfach das zu sein scheint (wenn man es kann! ;-))
Kann ich die Suchte der Bilder auch auf Ordner eingränzen, die sich im selben Ordner wie die Excel-Datei befinden?
Grund:
Der Ordner soll kopiert werden und anderen Kollegen zur Verfügung gestellt werden.
Somit kann die Angabe des Pfades nicht mehr gewährleistet werden!
Ich hoffe, dass dir das auch so einfach von der Hand geht.
Danke bereits vorab!
AW: Dateinamen auswählen ComboBox
08.11.2019 16:15:41
Thorsten
Ach so, haben noch vergessen:
mit der Zeile " .AddItem Left(sDatei, Len(sDatei) - 4)" werden ja die letzten 4 Stellen vom Namen gelösht. Das funktioniert bei .jpg und .png super.
Nun gibt es auch ein paar dateien mit der Endung .jpeg
Hier bleibt der Punkt stehen.
Gibt es hierfür auch eventuell noch eine einfache abhilfe (lösche alles hinter dem Punkt)
Anzeige
AW: Dateinamen auswählen ComboBox
11.11.2019 15:50:03
fcs
Hallo Thorsten,
für variablen Pfad (Pfad der Exceldatei mit dem makro) und variable Datei-Erweiterung (3 oder 4 Zeichen nach dem ".") sieht es wie folgt aus.
LG
Franz
Private Sub ComboBox3_GotFocus()
'Beim Anklicken der Combobox die Auswahlliste erstellen
Dim sPATH As String
Dim sDatei As String
sPATH = ThisWorkbook.Path & "\Bilder"
ComboBox3.Clear
sDatei = Dir(sPATH & "\*.*")
With ComboBox3
.Clear
Do Until sDatei = ""
.AddItem Left(sDatei, InStrRev(sDatei, ".") - 1)
sDatei = Dir
Loop
End With
Me.ComboBox4.List = Me.ComboBox3.List
Me.ComboBox5.List = Me.ComboBox3.List
'.... usw.
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige