folgendes Problem bereitet mir Kopfzerbrechen:
Ich bekomme von einem Gerät Messdaten von Proben als .csv-Dateien, wobei jede Probe eine eigene Datei erzeugt.
Die Dateien sollen in einer Excel-Mappe zusammengefügt werden. Dafür verwende ich folgendes Makro:
Sub CSV_Import()
Dim dateien, i, lastrow
lastrow = 1
dateien = Application.GetOpenFilename _
("csv-Dateien (*.csv), *.csv", MultiSelect:=True)
If IsArray(dateien) Then
For i = 1 To UBound(dateien)
Workbooks.Open dateien(i), local:=True
With ThisWorkbook.Sheets(1)
ActiveSheet.UsedRange.Copy Destination:=.Range("A" & lastrow)
lastrow = .UsedRange.Rows.Count + 1
End With
ActiveWorkbook.Close False
Next i
End If
End Sub
Folgendes Problem ergibt sich nun:
Ich möchte nicht alle Zeilen aus jeder Datei haben, es reicht, wenn nur Zeile 3 kopiert wird.
Zudem wird beim Ausführen des Makros meine oberste Zeile in der Excelmappe überschrieben, kann ich das verhindern? Mit einer geschützten Arbeitsmappe hat das leider nicht funktioniert.
Ich habe leider viel zu wenige Excel- und vor allem so gut wie gar keine VBA-Kenntnisse, um das alleine lösen zu können...
MfG
Johannes