HERBERS Excel-Forum - die Dialoge

Thema: Dateien einlesen und öffnen

Home
Beim Aufruf der UserForm werden aus dem in Zelle B1 stehenden Verzeichnis alle Arbeitsmappen in die ListBox eingelesen. Die in der ListBox ausgewählten Dateien werden auf Schaltflächen-Klick geöffnet. Dateien einlesen und öffnen
  • Prozedur: UserForm_Initialize
  • Art: Ereignis
  • Modul: Klassenmodul der UserForm
  • Zweck: Dateien einlesen
  • Ablaufbeschreibung:
    • Variablendeklaration
    • Rahmen um das FileSearch-Objekt bilden
    • Suchverzeichnis festlegen
    • Dateifilter auf Excel-Arbeitsmappen beschränken
    • Dateisuche durchführen
    • Schleife über alle gefundenen Dateien starten
    • Aktuelle Datei in die ListBox einlesen
  • Code:

    
    Private Sub UserForm_Initialize()
       Dim iCounter As Integer
       With Application.FileSearch
          .LookIn = Range("B1").Value
          .FileType = msoFileTypeExcelWorkbooks
          .Execute
          For iCounter = 1 To .FoundFiles.Count
             lstFiles.AddItem .FoundFiles(iCounter)
          Next iCounter
       End With
    End Sub
    
  • Prozedur: cmdOpen_Click
  • Art: Ereignis
  • Modul: Klassenmodul der UserForm
  • Zweck: Dateien öffnen
  • Ablaufbeschreibung:
    • Variablendeklaration
    • Schleife über alle ListBox-Elemente bilden
    • Wenn der aktuelle ListBox-Eintrag ausgewählt ist...
    • Arbeitsmappe mit dem Namen des aktuellen ListBox-Eintrags öffnen
  • Code:

    
    Private Sub cmdOpen_Click()
       Dim iCounter As Integer
       For iCounter = 0 To lstFiles.ListCount - 1
          If lstFiles.Selected(iCounter) Then
             Workbooks.Open lstFiles.List(iCounter)
          End If
       Next iCounter
    End Sub