Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Listbox mit Dateien füllen

Forumthread: Listbox mit Dateien füllen

Listbox mit Dateien füllen
04.02.2017 12:11:40
RE
Hallo zusammen
Ich brauche wieder mal eure Hilfe...
Ich habe eine Userform gebastelt. Die hat eine Listbox, einen Cmd Button zum abbrechen und einen Cmd Button um die Datei zu öffnen.
Ich möchte, dass beim öffnen der userform alle Dateien eines gewissen verzeichnises in der listbox erscheinen und diese mit doppeklick oder mit Cmd Button öffnen geöffnet werden können.
Mit einem Grafik Button und Hyperlink kriege ich es hin, möchte aber, dass sich alles in der userform abspielt.
Danke für eure Hilfe und Gruss,
RE
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox mit Dateien füllen
04.02.2017 13:23:56
ransi
HAllo,
Versuch mal sowas:
' **********************************************************************
' Modul: UserForm1 Typ: Userform
' **********************************************************************

Option Explicit

Private Sub UserForm_Activate()
    Dim FSO As Object
    Dim vntDateien As Variant
    Dim objFolder As Object
    Dim Datei
    Const Pfad As String = "C:\Users\papa\makros"
    ListBox1.Clear
    Set FSO = CreateObject("Scripting.filesystemObject")
    Set objFolder = FSO.getfolder(Pfad)
    Redim vntDateien(objFolder.Files.Count)
    For Each Datei In objFolder.Files
        ListBox1.AddItem Datei
    Next
End Sub


Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    Dim myShell As Object
    Set myShell = CreateObject("shell.Application")
    myShell.Open ListBox1.Value
End Sub


ransi
Anzeige
AW: Listbox mit Dateien füllen
05.02.2017 10:47:00
RE
Hallo Ransi
Herzlichen Dank für deine Hilfe!
Das funktionierst soweit gut, die Daten werden in der Listbox angezeigt, allerdings passiert bei Doppelklick nichts.
Wie bringe ich das Makro dazu, die Datei zu öffnen? Entweder mit Doppelklick oder mit auswählen z.B Cmd Button öffnen.
Gruss,
RE
Anzeige
AW: Listbox mit Dateien füllen
05.02.2017 11:24:46
RE
Hat sich erledigt, danke die Ransi!
AW: Listbox mit Dateien füllen
06.02.2017 07:45:11
RE
Hallo Ransi
Habe nochmals eine Frage.
Wenn der Pfad z.B "C:" ist, funktioniert es und die Daten werden angezeigt. Was muss ich im Code ändern, wenn der Pfad "http:" ist (Intranet).
Wäre super, wenn du mir da nochmals helfen könntest.
Gruss und einen guten Wochenstart,
RE
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Listbox mit Dateien in Excel füllen


Schritt-für-Schritt-Anleitung

  1. Erstelle eine Userform: Öffne den VBA-Editor in Excel (Alt + F11) und füge eine neue Userform hinzu.

  2. Füge eine Listbox und zwei Command Buttons hinzu: Die Command Buttons sind für das Abbrechen und das Öffnen der Dateien.

  3. Öffne den Code-Editor: Doppelklicke auf die Userform, um den Code-Editor zu öffnen.

  4. Füge den folgenden Code ein:

    Option Explicit
    
    Private Sub UserForm_Activate()
       Dim FSO As Object
       Dim vntDateien As Variant
       Dim objFolder As Object
       Dim Datei
       Const Pfad As String = "C:\Users\papa\makros"
       ListBox1.Clear
       Set FSO = CreateObject("Scripting.filesystemObject")
       Set objFolder = FSO.getfolder(Pfad)
       ReDim vntDateien(objFolder.Files.Count)
    
       For Each Datei In objFolder.Files
           ListBox1.AddItem Datei
       Next
    End Sub
    
    Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
       Dim myShell As Object
       Set myShell = CreateObject("shell.Application")
       myShell.Open ListBox1.Value
    End Sub
  5. Testen: Schließe den VBA-Editor und teste die Userform, indem du sie öffnest. Die Dateien im angegebenen Verzeichnis sollten jetzt in der Listbox angezeigt werden.


Häufige Fehler und Lösungen

  • Problem: Die Listbox bleibt leer.

    • Lösung: Überprüfe den angegebenen Pfad. Stelle sicher, dass der Pfad korrekt ist und dass sich dort Dateien befinden.
  • Problem: Doppelklick auf die Listbox öffnet die Datei nicht.

    • Lösung: Stelle sicher, dass der Code für das Doppelklicken korrekt eingefügt wurde. Prüfe, ob ListBox1.Value den Pfad zur Datei enthält.
  • Problem: Pfad zu einer HTTP-Adresse funktioniert nicht.

    • Lösung: Der Code benötigt Anpassungen, um mit HTTP-Pfaden zu arbeiten. Du kannst die Shell-Anwendung dafür nicht verwenden. Stattdessen benötigst du möglicherweise eine API oder eine Webanwendung.

Alternative Methoden

Wenn du die Listbox nicht über VBA füllen möchtest, kannst du auch einen Datenbereich in Excel verwenden und diesen dann in die Listbox laden. Dies wäre nützlich, wenn du die Daten manuell verwalten möchtest.


Praktische Beispiele

  • Beispiel für einen HTTP-Pfad: Wenn du Dateien von einem Intranet hochladen möchtest, kannst du den Pfad anpassen, jedoch ist die direkte Verwendung von HTTP in einer Listbox nicht möglich. Du solltest die Dateien herunterladen oder einen anderen Ansatz wählen, um sie lokal verfügbar zu machen.

Tipps für Profis

  • Nutze Error-Handling im Code, um mögliche Fehler beim Zugriff auf Dateien zu erkennen.
  • Experimentiere mit Filteroptionen, um nur bestimmte Dateitypen (z.B. .xlsx) anzuzeigen.
  • Füge einen Suchfilter in der Userform hinzu, um die Benutzererfahrung zu verbessern.

FAQ: Häufige Fragen

1. Wie kann ich den Pfad dynamisch ändern?
Du kannst den Pfad in einer Textbox eingeben und diesen dann im Code verwenden, um die Dateien zu laden.

2. Können auch Unterordner angezeigt werden?
Ja, du kannst die Methode GetFolder so anpassen, dass sie auch Unterordner durchsucht, indem du eine rekursive Funktion implementierst.

3. Funktioniert das auch in Excel Online?
Nein, dieser Code benötigt den VBA-Editor, der nur in der Desktop-Version von Excel verfügbar ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige