Excel VBA .csv Import in Tabelle x, ab Spalte y
Hallo,
für meine Datenbank benutze ich ein Makro, um die Datensätze aus einer *.csv Datei in meine Tabelle zu kopieren. Funktioniert auch einwandfrei.
Jetzt möchte ich aber, dass die Datensätze erst ab Spalte F eingefügt werden. Als ich dies im Quellcode geändert habe, wurde jedoch nur der letzte Datensatz
der *.csv Datei eingefügt. Weiß jemand woran das liegen könnte?
Hier der Code:
Keinen Schimmer woran das liegen könnte, im Internet fand ich auch nur, wie ich ab einer bestimmten Spalte der csv Datei einfügen kann, nicht andersherum.(.csv Datei ist nicht veränderbar :/)
Mit freundlichen Grüßen, drimrim
für meine Datenbank benutze ich ein Makro, um die Datensätze aus einer *.csv Datei in meine Tabelle zu kopieren. Funktioniert auch einwandfrei.
Jetzt möchte ich aber, dass die Datensätze erst ab Spalte F eingefügt werden. Als ich dies im Quellcode geändert habe, wurde jedoch nur der letzte Datensatz
der *.csv Datei eingefügt. Weiß jemand woran das liegen könnte?
Hier der Code:
Sub Datei_Importieren()
Dim strFileName As String, arrDaten, arrTmp, lngR As Long, lngLast As Long, intLastS As Long
Const cstrDelim As String = ";" 'Trennzeichen
Call Tabelle_Leeren 'Tabelle leeren
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = False
.Title = "Datei wählen"
.InitialFileName = "c:\test\*.csv" 'Pfad anpassen
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 Tabelle4
' intLastS = Cells(6, Columns.Count).End(xlToLeft).Column + 1
lngLast = .Cells(Rows.Count, 1).End(xlUp).Row + 1
lngLast = Application.Max(lngLast, 1)
.Cells(lngLast, 1).Resize(, UBound(arrTmp) + 1) _ // (IngLast,1) habe ich zu (IngLast, 6) geändert, wird auch ausgeführt, jedoch nur mit dem letzten Datensatz //
= Application.Transpose(Application.Transpose(arrTmp))
End With
End If
Next lngR
End If
End Sub
Keinen Schimmer woran das liegen könnte, im Internet fand ich auch nur, wie ich ab einer bestimmten Spalte der csv Datei einfügen kann, nicht andersherum.(.csv Datei ist nicht veränderbar :/)
Mit freundlichen Grüßen, drimrim
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 313209
Url: https://administrator.de/forum/excel-vba-csv-import-in-tabelle-x-ab-spalte-y-313209.html
Ausgedruckt am: 30.01.2025 um 23:01 Uhr