CSV-Dateien nach Datumskriterium importieren

Bild

Betrifft: CSV-Dateien nach Datumskriterium importieren von: Pierre
Geschrieben am: 10.03.2005 16:00:21

Also ich habe einen Ordner mit csv-Dateien. Das sind alles Log-Dateien von verschiedenen Programmen. Deswegen haben die auch alle verschiedene Namen.
Ich will nur die importieren, die folgendermaßen heißen: "Spider20050215.csv"
Das Datum da drin steht immer für JJJJMMTT. Die anderen Dateien in dem Ordner sind auch CSV-Dateien. Aber die spielen nichts zur Sache, also so "Spiderhelp.csv".
Dann soll er alle Spiderdateien die er findet in eine Tabelle importieren. So lange bis keine mehr da sind.
Am besten wärs sicher mit ner Schleife, die das Datum hochzählt. Oder?
Und hinterher soll nämlich (wenn das funktionier) noch ne Funktion rein, mit der man entweder alle Dateien aus nur einem Monat abrufen kann oder eben alle!

Bild


Betrifft: AW: CSV-Dateien nach Datumskriterium importieren von: u_
Geschrieben am: 10.03.2005 16:19:18

Hallo,
schau dir mal das Filesearch-Objekt an. Mit .FileName="spider????????.csv"

Gruß


Bild


Betrifft: AW: CSV-Dateien nach Datumskriterium importieren von: Pierre
Geschrieben am: 10.03.2005 16:33:43

Hallo,

also eine Auswahl - VBA im Lernstadium gab es nicht.
Deshalb kann ich mit den schnellen Begriffen nichts anfangen.
Kannst du da bitte genauere werden, so Quellcode vieleicht? Danke.
Ich hab's mit importieren schon so probiert, mittels einer einfachen Aufzeichnung, aber da wüsste ich nicht wie ich dieses FileName="spider????????.csv" einbinden soll, und vorallem wo dann genau?! Das VBA, bin ich mir wirklich erst am beibringen.

Grüße Pierre


Bild


Betrifft: AW: CSV-Dateien nach Datumskriterium importieren von: u_
Geschrieben am: 10.03.2005 17:17:54

Hallo,
ungetestet.
Sub Import_csv()
  Dim fs As FileSearch, wb As Workbook, i As Integer, wsh As Worksheet
  Set fs = Application.FileSearch
  Set wsh = ThisWorkbook.Sheets(1)
  Const strOrdner As String = "c:\test"
  Const strFName As String = "spider*.csv"
  With fs
    .Filename = strFName
    .LookIn = strOrdner
    .SearchSubFolders = False
    If .Execute > 0 Then
      For i = 1 To .FoundFiles.Count
        'sind hinter 'spider' 8 Ziffern?
        If IsNumeric(Mid(.FoundFiles(i), InStr(.FoundFiles(i), "spider") + 5, 8)) Then
          Set wb = Workbooks.Open(.FoundFiles(i))
          With wb.Sheets(1)
            .Range(.Cells(2, 1), .Cells.SpecialCells(xlLastCell)).Copy _
              Destination:=wsh.Cells(65536, 1).End(xlUp).Offset(1, 0)
          End With
          wb.Close False
          Set wb = Nothing
        End If
      Next i
    End If
  End With
End Sub


Gruß


Bild


Betrifft: AW: CSV-Dateien nach Datumskriterium importieren von: Pierre
Geschrieben am: 11.03.2005 10:23:29

Hallo nochmal,
es funktioniert, aber es geht nichts los - mit importieren meine ich. Ich habe mal ein Ausgabefenster reingetan, das sagte z.b. 5 Dateien gefunden, und wir ihre Namen gesagt. Aber importieren tut sie diese nicht, scheinbar so wie's mir scheint, nur suchen und dann ein unsichtbares "ok"?! Könntest nochmal kurz nachhelfen?
Zumal ja da ein "Workbooks.Open" drin ist, aber es öffnet diese ja nicht mal.
Also wäre nett wenn du es dir nochmal anschauen könntest dankeschön.

Grüße Pierre


 Bild

Beiträge aus den Excel-Beispielen zum Thema "CSV-Dateien nach Datumskriterium importieren"