excel - 我可以为数据连接自动化文本导入向导吗?
问题描述
我记录了一个 Excel 宏来创建到 CSV 的数据连接。
但是,当我运行它时,我需要手动设置文本导入向导。考虑到我总是选择相同的选项,如何自动化文本导入向导?
更新:我从来没有通过 vba 进行数据连接,所以我只尝试记录宏,生成以下代码:
Workbooks("name").Connections.AddFromFile "...\data.csv", True, False
这将创建数据连接,但每次都会提示文本导入向导。我想用它来创建一个 Excel 加载项
解决方案
在@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
对不起西班牙语单词。
推荐阅读
- robotframework - 如何在 Visual Code Studio 上设置机器人框架
- java - Java ArrayDeque 中的 pop() 和 remove() 有本质区别吗?
- python - 有没有办法在代码中解决这个问题?
- python - 在 pandas 中搜索列
- javascript - 在 react js 的严格模式树中检测到如何修复旧版上下文 API
- javascript - 在模块需要期间强制传递参数
- mysql - 从另一个具有受限 IP 地址的网络连接到 MySQL 数据库
- kotlin - 传递和访问传递给需要其超类型的类构造函数的子类型的值和函数
- c++ - 打印向量数组中的所有元素
- javascript - 查找上传到 React 应用程序的音频文件的持续时间/长度