Имя файла Corrupted in VBA excel

Из ясного голубого неба я вдруг получаю ошибку, которую я никогда раньше не видел, и я не знаю, почему это происходит, потому что я не сделал ничего, чтобы вызвать проблему.

Я пытаюсь открыть. CSV-файл, который я успешно выполнял много тысяч раз. Вот код:

ChDir "KathyStringHD:Library:WebServer:Documents:DispatchReports:DispatchReportsFolder:" NextFile = Dir("") Do While NextFile <> "" If NextFile <> ".DS_Store" Then Extension = Right(NextFile, 4) If Extension = ".csv" Then SaveFile = Left(NextFile, Len(NextFile) - 4) & ".xlsx" MsgBox NextFile Call ProcessMonthlyReport(NextFile, Extension, SaveFile, sPath, SavePath) End If End If NextFile = Dir Loop 

Все работает, за исключением одного файла. Имя файла – «ACTStillwater February, 2013.csv», но когда процедура пытается открыть этот один файл, имя повреждается, чтобы читать «ACTStillwater Februa #, 6 случайных шестнадцатеричных чисел, затем .csv». Приставка выглядит как цветовой код, но у меня его нет в самом файле или в скрипте PHP, который сгенерировал этот файл. Когда я захожу в Finder и получаю информацию о файле, имя там прекрасно. Как я уже сказал, то, что меня озадачило, – это ошибка только в одном файле.

Похоже, что в имени файла есть запятая:

ACTStillwater Февраль , 2013.csv

Попробуйте удалить его:

ACTStillwater Февраль 2013.csv

и посмотреть, будет ли он работать сейчас.

Подробнее см. MSDN – Имя файла (Windows).

Я подозреваю, что это не запятая, а тот факт, что имя файла имеет более 32 символов.

Я обнаружил, что при открытии файла в vba, у которого было какое-либо имя файла или папки по всему пути с более чем 32 символами, вы не сработали.

Возможно, это объясняет, почему внезапно возникла проблема:

«ACT Stillwater February, 2013.csv» имеет 33

В то время как:

«ACT Stillwater Январь, 2013.csv

имеет 32

Просто мысль.

Если ваш путь был

«KathyStringHD: Library: WebServer: Documents: DispatchReports: Отчеты о доставке за год. Папка:

Это также провалится

Боб Дж.

Interesting Posts

VBA для проверки каждого листа, найдите ячейку, содержащую функцию = СЕГОДНЯ (), и выберите эту ячейку

Сортировка таблицы excel по датам событий (иногда 1день иногда dd1.-dd2.mm.yyyy)

ошибка 9 поддиапазона вне диапазона

Копировать дубликаты строк из 2 столбцов Excel VBA

Глобальный крюк для клавиатуры для (Excel) автоматизации addin (не VSTO)

форматирование с неработающей бумагой таблицы.

Значение столбца таблицы Excel Pivot Table обновляет аналогичные значения при обновлении

Редактирование подсказок таблицы диаграмм таблицы Excel Excel с помощью VBA

Как вырезать буквы из строки и сравнивать значения?

Excel: слева от ссылки

Проблемы с взаимодействием Office 2003, интерфейс, метод не найден

Отображение повторяющихся строк с повторяющимися количествами в сводной таблице Excel через VBA

Как сортировать сводную таблицу Excel по нескольким параметрам?

Loop не работает, когда я вызываю его в Private Sub Change

Ошибка VBA to SQL

Давайте будем гением компьютера.