После комментария @QHarr я теперь использую Excel 2016. Используя Макро-рекордер, я получил длинный код, который дал мне решение
ActiveWorkbook.Queries.Add Name:="data", Formula:= _
"let" & Chr(13) & "" & Chr(10) & " Origen = Csv.Document(File.Contents(""...\data.csv""),[Delimiter="","", Columns=8, Encoding=1252, QuoteStyle=QuoteStyle.None])," & Chr(13) & "" & Chr(10) & " #""Encabezados promovidos"" = Table.PromoteHeaders(Origen, [PromoteAllScalars=true])," & Chr(13) & "" & Chr(10) & " #""Tipo cambiado"" = Table.TransformColumnTypes(#""Encabezados promovidos" & _
""",{{""FechaID"", Int64.Type}, {""año"", Int64.Type}, {""mes"", Int64.Type}, {""dia"", Int64.Type}, {""hora"", Int64.Type}, {""Nemo"", type text}, {""MW generados"", type number}, {""Tecnología"", type text}})" & Chr(13) & "" & Chr(10) & "in" & Chr(13) & "" & Chr(10) & " #""Tipo cambiado"""
Workbooks(This_workbook).Connections.Add2 "Consulta - data", _
"Conexión a la consulta 'data' en el libro.", _
"OLEDB;Provider=Microsoft.Mashup.OleDb.1;Data Source=$Workbook$;Location=Carga Horaria;Extended Properties=" _
, """data""", 6, True, False
Извините за испанские слова,