Время выполнения 52 Ошибка неверного имени файла или номера в одной сетевой системе - PullRequest
2 голосов
/ 19 июня 2019

Я получаю ошибку времени выполнения '52' с ошибкой имени или номера файла, однако на все вопросы, которые касаются этой проблемы в стеке, я вижу ответы, которые касаются изменения кода. Проблема заключается в том, что код использует каталог на сетевом диске, и ошибка не возникает на других компьютерах в сети.

Возможно, стоит отметить, что у моего компьютера до недавнего времени не было активированной версии Windows из-за сложности, однако я предположил, что это является причиной ошибки, но она все еще происходит после активации.

У меня нет опыта работы с Microsoft Visual Basic, и я не писал код, поэтому, если вам нужна дополнительная информация, просто спросите.

Private Sub Command1769_Click()
Me.Refresh

If Len(Dir("file location" & 
[Combo1199], vbDirectory)) = 0 Then
MkDir "file location" & 
[Combo1199]
End If

Я заменил имя местоположения файла на «местоположение файла», однако я проверил, и это правильно. [Combo1199] - это имя папки, которая уже присутствует в каталоге, а ее измененная дата показывает, как когда был запущен код VBA. Отладка показывает, что проблема возникает в If Len (... строка

РЕДАКТИРОВАНИЕ РЕШЕНО: по какой-то причине DNS-серверы не были настроены на автоматический поиск, поэтому я не был подключен к соответствующему серверу лицензий.

1 Ответ

3 голосов
/ 19 июня 2019

Среди других возможных причин, по моему опыту, ошибка 52 времени выполнения может возникать, когда путь допустим, но недоступен, например, подключенный сетевой диск, для которого у пользователя недостаточно разрешений на чтение, или к которому невозможно получить доступ из-зацель находится в автономном режиме.

Поэтому я бы посоветовал вам распечатать путь, представленный "file location" & [Combo1199], в «Немедленное окно» (просмотрите это, используя Ctrl + G вVBA IDE), используя:

Debug.Print "file location" & [Combo1199]

И затем убедитесь, что вы можете получить доступ к этому местоположению «вручную» через File Explorer с того же ПК, используя те же учетные данные пользователя, которые активны при выполнении кода.

...