csv-Import !! Lösung Nepumuk - Erweiterung ?
06.04.2015 20:00:53
Stef@n
halle alle anderen,
"last easter-greeting" :)
Hallo Nepumuk,
leider konnte ich Deine Lösung aus dem Thread
https://www.herber.de/forum/archiv/1416to1420/t1417523.htm#1417523
er heute probieren !
Funktioniert einwandfrei :) - ein echtes Ostergeschenkt für mich ;)
Dein Code
Option Explicit
Public Sub IMPORTCSV()
Dim strFolder As String, strName As String
Dim lngRo
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show Then
strFolder = .SelectedItems(1) & "\"
strName = Dir$(strFolder & "*.csv")
Do Until strName = vbNullString
Call Workbooks.OpenText(Filename:=strFolder & strName, Local:=True)
Rows(1).Delete
With ThisWorkbook.Worksheets(1)
lngRow = .Cells(Rows.Count, 2).End(xlUp).Row + 1
Call ActiveSheet.UsedRange.Copy(Destination:=.Cells(lngRow, 2))
.Cells(lngRow, 1).Value = strName
End With
Call ActiveWorkbook.Close(SaveChanges:=False)
strName = Dir$
Loop
End If
End With
End Sub
kopiert in die erste Spalte / in der ersten Zeile den Dateinamen der jeweils importieren csv-Datei.
Ist es ein "Leichtes", diesen Dateinamen ebenfalls in JEDER importierte
Zeile ebenfalls einzufügen ? Ja, händisch kann ich dass - per Makro wäre es
noch cooler ;)
Hintergrund: später möchte ich alle importieren Daten per Pivot auswerten,
dafür wäre es hilfreich, wenn in Spalte A vor jedem Datensatz der
entsprechende Dateiname steht :)
Jetzt nach soviel Ostereier-Essen *grins*
noch ein Idee:
Der Code kopiert ja die Daten alles in einem bestimmten auszuwählenden
Verzeichnis in die xls.
Wäre es möglich, im Auswahl-Menue nur bestimmte Dateien
(gern auch Markierung per STRG-Taste)
die dann in eine bestehende xls (also "alte Daten bereits vorhanden")
dann jeweils "unten" anfügt ?
Meine Eier-Kreativität spinnt ?
Keine Ahnung - ich bin jedoch immer wieder guter Hoffnung,
in diesem Forum immer wieder tolle Lösungen zu finden ... UND
.. ich lerne immer wieder dazu :)
In froher Hoffnung
Besten Gruss
Stef@n