我正在尝试将我的同事正在做的一个过程自动化。这个过程是手动的今天,他们有一个旧的VBA宏,格式的文件不正确,而我正在修复这个,我想我可以自动化一些其他步骤,他们这样做。今天的步骤是:
1.打开新的excel文件
1.转到数据->从文件获取数据->从文本/CSV
1.选择文件
1.选择1252:西欧(Windows),分隔符分号
1.负载
1.运行宏
1.保存为UTF-8编码的CSV
我已经设法修复每一步,但我有麻烦导入csv数据。我已经成功地添加了一个连接到正确的文件,但没有数据显示在工作表中,即使数据在Power Query编辑器中正确显示。我试着搜索如何“加载”数据,但我不能弄清楚。
创建连接的当前代码:
Sub formatCSV()
'Import data from csv
Dim workbook As workbook
Dim filePath As String
Dim importFormula As String
'Set file path
filePath = ""
Set workbook = ActiveWorkbook
importFormula = _
"let " & _
"Source = Csv.Document(File.Contents(""" & filePath & """), [Delimiter = "";"", Columns=30, Encoding=1252, QuoteStyle=QuoteStyle.Csv]), " & _
"#""Promoted Headers"" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]) " & _
"in " & _
"Source"
workbook.Queries.Add Name:="Query1", Formula:=importFormula
End Sub
字符串
感谢所有帮助!
1条答案
按热度按时间trnvg8h31#
你可以试试Sub,它有两个参数:查询名称和目标工作表作为对象。它在A1单元加载数据。
你可以添加到你的代码在aed of sub尝试它:
字符串
子代码:
型