Можно ли автоматизировать мастер импорта текста для подключения к данным? - PullRequest
0 голосов
/ 28 января 2019

Я записал макрос Excel для создания подключения к данным в формате CSV.

Однако, когда я его запускаю, мне нужно вручную установить мастер импорта текста.Как я могу автоматизировать Мастер импорта текста, учитывая, что я всегда выбираю для него одни и те же параметры?

Обновление : я никогда не подключался к данным через vba, поэтому я только пытался записатьМакрос, генерирующий следующий код:

Workbooks("name").Connections.AddFromFile "...\data.csv", True, False

Создает подключение к данным, но каждый раз запрашивает Мастер импорта текста.Я хочу использовать его для создания надстройки Excel

1 Ответ

0 голосов
/ 30 января 2019

После комментария @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

Извините за испанские слова,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...