Ich habe bereits einige Versuche unternommen um mein Vorhaben in die Tat umzusetzen jedoch immer gescheitert. Ich bin nicht im Stande, ein csv File zu öffnen, vier Zellen zu kopieren und in meinem Haupt-Formular einzufügen. Deshalb wende ich mich an euch.
Ziel ist es, etwa 100 csv Files nacheinander zu öffnen und 4 Zellen in ein Hauptformular zu kopieren.
der Code ist wie folgt:
Private Sub Einlesen_Click()
pfad = Application.ActiveWorkbook.Path 'Pfad von aktuellem Excel file speichern.
datnam = Dir(pfad & "*.csv") 'Dateiname wird eingelesen
LeereZeile = Sheets("Historie").Cells(1, 1) 'bei A1 wird die Aktuelle Zeile ausgegeben wo _
_
eingetragen werden soll
LeereSpalte = 1 'Laufvariable um gewünschte Spalte für die _
Einträge zu finden
MsgBox Dir(pfad)
MsgBox "Pfad: " & pfad
MsgBox "Dateiname: " & datnam
'Start der Schleife um die Daten ins Hauptformular einzutragen
Do While datnam "" '
wb = Workbooks.Open(pfad & datnam) 'öffnet das File
XNeu = 2 'Spalte der neuen Arbeitsmappe
ECLplatz = Sheets("Historie").Cells(3, LeereSpalte)
'Im Hauptformular die Stelle Finden, welche mit dem Filename übereinstimmt um dort einzutragen
Do While datnam ECLplatz
LeereSpalte = LeereSpalte + 1
ECLplatz = Sheets("Historie").Cells(3, LeereSpalte)
Loop
i = 0 'Zellen (0.3 bis 1um) übertragen
'Die 4 Zellen werden vom csv File ins Hauptformular übertragen
Do Until i = 4
Sheets("Historie").Cells(LeereZeile, LeereSpalte) = wb(XNeu, 2)
XNeu = XNeu + 1
LeereSpalte = LeereSpalte - 1
i = i + 1
Loop
Loop
Close #1
End Sub
Danke für eure Hilfe
Gruss
Patrick