Я захватил макрос, который импортирует текстовый файл с расширением .raw в электронную таблицу .xlsm. Электронная таблица Excel находится в том же каталоге, что и файл, который я хочу импортировать.
Захваченный макрос включен. CommandTYpe = 0
. Это вызвало проблемы, которые, казалось, исчезли, когда я это закомментировал (см. Ниже). Некоторое время все работало, а затем остановилось.
Когда я сейчас запускаю макрос, я получаю всплывающее окно Vba, говорящее
Ошибка времени выполнения «1004»: Excel не может найдите текстовый файл, чтобы обновить sh этот диапазон внешних данных. Убедитесь, что текстовый файл не был перемещен или переименован, затем повторите команду refre sh снова. "
Но файл определенно находится в том же каталоге, что и электронная таблица Excel.
Отладчик помечает строку .Refre sh BackgroundQuery: = False. Вот код до точки возникновения ошибки:
Sub Import_Raw_Files()
'
' Import_Raw_Files Macro
'
' Keyboard Shortcut: Ctrl+Shift+I
'
Sheets("hiVchgATTECdrive").Select
Call Clear
Range("A1").Select
Application.CutCopyMode = False
With ActiveSheet.QueryTables.Add(Connection:="TEXT;hiVchgATTECdrive.raw", Destination:=Range("$A$1"))
'.CommandType = 0
.Name = "hiVchgATTECdrive"
.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 = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileOtherDelimiter = "|"
.TextFileColumnDataTypes = Array(1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False