运行时错误1004 Excel无法find文本文件刷新此外部范围
我试图通过导入他们作为文本文件使用数据=>从文本选项通过VBA将文件夹中的tsv文件转换为xlsx格式。
在那期间遇到这个错误
码:
Sub convert() Dim CSVfolder As String, XlsFolder As String, fname As String, wBook As Workbook CSVfolder = ActiveSheet.Range("B2").Value & "\" fname = Dir(CSVfolder & "*.tsv") Do While fname <> "" Workbooks.Add Set wBook = ActiveWorkbook With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & fname, Destination:=Range("$A$1")) .Name = fname .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .TextFilePromptOnRefresh = False .TextFilePlatform = 65001 .TextFileStartRow = 1 .TextFileParseType = xlDelimited .TextFileTextQualifier = xlTextQualifierNone .TextFileConsecutiveDelimiter = False .TextFileTabDelimiter = True .TextFileSemicolonDelimiter = False .TextFileCommaDelimiter = False .TextFileSpaceDelimiter = False .TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1) .TextFileTrailingMinusNumbers = True .Refresh BackgroundQuery:=False End With wBook.Close False fname = Dir Loop End Sub
结束小组
为什么我得到错误.Refresh BackgroundQuery:= False ?
错误在那里发生,因为它在Refresh
阶段查找文件。
问题是Fname
不包含path。
将您的连接更改为:
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & CSVfolder & fname, Destination....