Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
960to964
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
960to964
960to964
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

mehrere Dateien einlesen

mehrere Dateien einlesen
13.03.2008 17:34:00
Leonhard
Hallo alle miteinander,
Ich möchte verschiedene Dateien mit der gleichen Endung und vom selben Ordner in VBA einlesen und werte daraus kopieren.
Das kopieren ist kein Problem.
Aber ich brauche am besten eine schleife die nacheinander alle Dateinamen in eine Variable einliest die die spezielle Endung besitzen.
Weiterhin wäre es günstig wenn ich den Pfad der Dateien in eine andere Variable speichern könnte (mit Application.GetOpenFilename() bekomme ich ja Pfad und Dateiname)
mfg Leo

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: mehrere Dateien einlesen
13.03.2008 17:52:00
Tino
Hallo,
bei VBA gut müsstest du hiermit etwas anfangen können.
Geht nicht bei Office 2007!

Sub dateiauflisten()
Dim i As Long
With Application.FileSearch
.NewSearch
.LookIn = "D:\Bilder\Amerika" 'Suchverzeichnis
.SearchSubFolders = False 'True = mit Unterverzeichnis
.Filename = "*.jpg" 'Datei Typ
.Execute
For i = 1 To .FoundFiles.Count
Debug.Print .FoundFiles(i)  'kompletter Pfad
Debug.Print Right(.FoundFiles(i), Len(.FoundFiles(i)) - InStrRev(.FoundFiles(i), "\")) 'nur  _
Name der Datei
Next i
End With
End Sub


Gruß
Tino

Anzeige
AW: mehrere Dateien einlesen
13.03.2008 18:01:28
Josef
Hallo Leo,
eine Möglichkeit.
' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit
'by J.Ehrensberger
Private Function FileSearchFSO(ByRef Files As Variant, ByVal InitialPath As String, Optional ByVal FileName As String = "*", _
    Optional ByVal SubFolders As Boolean = False) As Long


Dim mobjFSO As Object, mfsoFolder As Object, mfsoSubFolder As Object, mfsoFile As Object

Set mobjFSO = CreateObject("Scripting.FileSystemObject")

Set mfsoFolder = mobjFSO.GetFolder(InitialPath)

On Error Resume Next

For Each mfsoFile In mfsoFolder.Files
    If Not mfsoFile Is Nothing Then
        If LCase(mobjFSO.GetFileName(mfsoFile)) Like LCase(FileName) Then
            If IsArray(Files) Then
                Redim Preserve Files(UBound(Files) + 1)
            Else
                Redim Files(0)
            End If
            Files(UBound(Files)) = mfsoFile
        End If
    End If
Next

If SubFolders Then
    For Each mfsoSubFolder In mfsoFolder.SubFolders
        FileSearchFSO Files, mfsoSubFolder, FileName, SubFolders
    Next
End If

If IsArray(Files) Then FileSearchFSO = UBound(Files) + 1
On Error GoTo 0
Set mobjFSO = Nothing
Set mfsoFolder = Nothing
End Function

Private Function fncBrowseForFolder(Optional ByVal defaultPath = "") As String
Dim objFlderItem As Object, objShell As Object, objFlder As Object

Set objShell = CreateObject("Shell.Application")
Set objFlder = objShell.BrowseForFolder(0&, "Ordner auswählen...", 0&, defaultPath)

If objFlder Is Nothing Then GoTo ErrExit

Set objFlderItem = objFlder.Self
fncBrowseForFolder = objFlderItem.Path

ErrExit:

Set objShell = Nothing
Set objFlder = Nothing
Set objFlderItem = Nothing
End Function

Sub test()
Dim a
Dim result As Long, l As Long, strFolder As String, strExt As String

strFolder = fncBrowseForFolder

If strFolder = "" Then Exit Sub

strExt = "xls" 'gesuchte Dateiendung

result = FileSearchFSO(a, strFolder & "\", "*." & strExt, True)

If result <> 0 Then
    For l = 0 To UBound(a)
        'hier der Code zum Öffnen/Auslesen der Dateien
    Next
End If

End Sub


Gruß Sepp



Anzeige
AW: mehrere Dateien einlesen
14.03.2008 08:18:55
Leonhard
Vielen Dank an euch beide!!
Das hat mir sehr weitergeholfen!!
mfg Leo

184 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige