Da ich absolute keine Ahnung von Visual Basic etc habe würde ich gerne ein Kleinigkeit hinzugefügt haben.
Dieses Macro, wenn angeklickt, öffnet ein neues Dialog wo ich eine csv datei auswählen muss.
Nach der Auswahl import es den KOMPLETTEN Inhalt in mein Excel Dokument und zwar so dass es es unten anhängt.
So weit so gut, was ich jetzt gerne noch hätte wäre die Auswahl von bestimmten Feldern und nicht alles.
Könnte mir jemand dabei helfen? Vielen Dank
Sub Datei_Importieren_2()
Dim strFileName As String, arrDaten, arrTmp, lngR As Long, lngLast As Long
Const cstrDelim As String = ";" 'Trennzeichen
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = False
.Title = "Datei wählen"
.InitialFileName = "" 'Pfad anpassen
.Filters.Add "CSV-Dateien", "*.csv", 1
.Filters.Add "Alle Dateien", "*.*", 2
If .Show = -1 Then
strFileName = .SelectedItems(1)
End If
End With
If strFileName <> "" Then
Application.ScreenUpdating = False
Open strFileName For Input As #1
arrDaten = Split(Input(LOF(1), 1), vbCrLf)
Close #1
For lngR = 1 To UBound(arrDaten)
arrTmp = Split(arrDaten(lngR), cstrDelim)
If UBound(arrTmp) > -1 Then
With ActiveSheet
lngLast = .Cells(Rows.Count, 1).End(xlUp).Row + 1
lngLast = Application.Max(lngLast, 4)
.Cells(lngLast, 1).Resize(, UBound(arrTmp) + 1) _
= Application.Transpose(Application.Transpose(arrTmp))
.Cells(lngLast, Columns.Count).End(xlToLeft).Offset(, 1) = strFileName
' .Cells(lngLast, Columns.Count).End(xlToLeft).Offset(, 1) _
= Mid(strFileName, InStrRev(strFileName, "\") + 1)
End With
End If
Next lngR
End If
'Sheets(1).Range("A1")=strFileName 'Dateiname in Blatt1!A1
End Sub