ich möchte eigentlich etwas, das ich schon ein paar mal gemacht habe. Aber irgendwie geht das hier nicht und ich begreife nicht warum.
Ich habe mit dem Makrorecorder das auslesen einer CSV Datei erstellt. Nun möchte ich das was anpassen und als Quelle strPfad verwenden da die CSV immer in demselben Ordner liegt.
Aber immer wenn ich das mache, kommt eine Fehlermeldung bzgl. Anweisungsende und er markiert eine oder mehrere "
Ich sende euch mal den bisherigen Code mit den Vorbereitungen für strPfad
Sub Erstellen()
Dim strPfad As String
Dim Quelle As String
strPfad = ThisWorkbook.Path
Quelle = strPfad & "\export.csv"
ActiveWorkbook.Queries.Add Name:="export", Formula:= _
"let" & Chr(13) & "" & Chr(10) & " Quelle = Csv.Document(File.Contents(""C:\Users\ _
Computer\Desktop\csv auslesen - MUSTER\export.csv""),[Delimiter="";"", Columns=4, Encoding=1252, QuoteStyle=QuoteStyle.None])," & Chr(13) & "" & Chr(10) & " #""Höher gestufte Header"" = Table.PromoteHeaders(Quelle, [PromoteAllScalars=true])," & Chr(13) & "" & Chr(10) & " #""Geänderter Typ"" = Table.TransformColumnTypes(#""Höher gestufte Header"",{{""Datum"", type date}" & _
", {""Name"", type text}, {""Abt"", type text}, {""Abwesenheit"", type text}})" & Chr( _
13) & "" & Chr(10) & "in" & Chr(13) & "" & Chr(10) & " #""Geänderter Typ"""
ActiveWorkbook.Worksheets.Add
With ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _
"OLEDB;Provider=Microsoft.Mashup.OleDb.1;Data Source=$Workbook$;Location=export; _
Extended Properties=""""" _
, Destination:=Range("$A$1")).QueryTable
.CommandType = xlCmdSql
.CommandText = Array("SELECT * FROM [export]")
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = True
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.ListObject.DisplayName = "T_export"
.Refresh BackgroundQuery:=False
End With
ActiveSheet.Name = "Quelle"
With Range("T_export[Datum]")
.Name = "N_Datum1"
End With
With Range("T_export[Name]")
.Name = "N_Name1"
End With
Sheets("Start").Move Before:=Sheets(1)
End Sub
Sorry wegen der fehlenden Umbrüche, aber wenn ich die " _" reinmache, dann meckert VBA ebenfalls.Mein Versuch sah übrigens so aus:
& " Quelle = Csv.Document(File.Contents("strPfad & "\export.csv"")
Ich hoffe mir kann da jemand helfen.
Liebe Grüße
Steve