我当前的工作簿由两个工作表组成:1)控件2)Raw。通过“控件”,我可以按下许多按钮来测试正在构建的进程。我目前正在将数据从文本文件导入另一个Excel工作表“ Raw”。我记录了将文本文件导入Raw工作表的宏,并获得了代码。我对其进行了少许修改,以为任何用户创建一个动态文件路径,并注释掉了一行代码(引起了连续错误,并且找不到很好的解决办法)。我遇到了我正在苦苦挣扎的错误(我不是开发人员-只是边走边学)我尝试从控件工作表运行宏并将文本文件数据发送到原始工作表时,会遇到错误。通知中说:
运行时错误'-2147024809(80079957)':目标范围不在创建查询表的工作表上。
我理解该消息(我不是从Raw工作表中运行宏),但是我不知道如何修复代码以使其运行。
我的第二个问题是,如果有人可以帮助解决第一个问题,那么当我再次运行testimport宏时,我该如何更改代码(如果有的话)以覆盖“ Raw”中的数据?
Sub TestImport()
Dim FPath As Variant
FPath = "TEXT;" & Environ("userprofile") & "\MyFilePath\File.txt"
MsgBox FPath
With ActiveSheet.QueryTables.Add(Connection:= _
FPath _
, Destination:=Range("Raw!$A$1"))
'.CommandType = 0 (Error here has something to do with query table data type - no value will solve so comment out and program runs)
.Name = "File"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 437
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileOtherDelimiter = "|"
.TextFileColumnDataTypes = Array(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, _
1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
ActiveWindow.SmallScroll Down:=-360
Sheets("Raw").Select
结束子