Ошибка выполнения VBA 1004: метод "OpenText" объекта "книги" не удалось

после обновления до Excel 2010 (с 2003) перестал работать скрипт, используемый для стандартизации данных из Access import. Он возвращает ошибку:"ошибка выполнения "1004": метод "OpenText" объекта "книги" не удалось".

перед частью OpenText макрос ищет в папке последний файл по DateCreated, а затем возвращает имя файла и путь.

код:

Workbooks.OpenText FileName:=myDir & "" & strFilename, _
    Origin:=-535, StartRow:=1, DataType:=xlDelimited, TextQualifier:= _
    xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=False _
    , Comma:=True, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 2), _
    Array(2, 2), Array(3, 2), Array(4, 2), Array(5, 2), Array(6, 2), Array(7, 2), Array(8, 2), _
    Array(9, 2), Array(10, 2), Array(11, 2), Array(12, 2), Array(13, 2), Array(14, 2), Array(15 _
    , 2), Array(16, 3), Array(17, 3), Array(18, 3), Array(19, 3), Array(20, 2), Array(21, 2), _
    Array(22, 1), Array(23, 2), Array(24, 2), Array(25, 3), Array(26, 2), Array(27, 2), Array( _
    28, 2)), TrailingMinusNumbers:=True

любые идеи, что может быть висит Excel 2010 вверх?

файл все еще a .xls файл и работает в режиме совместимости, с которым у меня еще не было проблем ни в одном другом макросе.

обновлено после записи нового макроса и сравнения w / old:

новый макрос One difference, аргумент Origin.

в старом макросе:

Origin:=-535

новый макрос:

Origin:=65001

читать на происхождение, это, кажется, быть источником файл, который необходимо импортировать, и это может быть опущенный.

какое значение имеет происхождение при импорте? Тип данных уже указан. Источник контролирует кодировку?

удаление источника из исходного макроса, возвращается та же ошибка. Изменение исходного значения на 65001 все равно возвращает ту же ошибку.

11
задан music2myear
06.12.2022 20:51 Количество просмотров материала 2883
Распечатать страницу

2 ответа

проверяем путь:

UserProfileFolder = Environ("UserProfile")

и

Workbooks.OpenText Filename:

в офисе 2003 путь окружающей среды XP был:

%systemDrive%\Documents and Settings\{user}\My Documents

для Vista и Windows 7 это:

%systemdrive%\users\Documents

где %systemdrive% обычно C:

2
отвечен Tony EE rocketscientist 2022-12-08 04:39

@datatoo, ты указал мне верное направление. Это была проблема переменной / пути. Как-то, я начал использовать strFullFile как строку, чтобы взять строку полного пути файла. Тем не менее, я также просто изменил strFileName, добавив строку myDir, чтобы создать полный путь к файлу. Удаление изменив соответствующие ссылки на strFullFile в strFileName решен вопрос.

1
отвечен music2myear 2022-12-08 06:56

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх