![]() |
Обработка ошибки открытия
В код нужно добавить фрагмент обработки ошибки открытия в случае неверного указания пути или имени файла с выводом сообщения об этом
вот сам код: Код:
Option Explicit |
daniil_im, «неверного указания пути» в этом коде быть не может, ибо путь к «Мои документы» задаётся функциями операционной системы. Имя файла указывается напрямую в коде. Что тут может быть «неверного»?!
Ну, хорошо. Предположим, мы настолько тупы, что указали в коде недопустимые символы в имени файла: Код:
strDestFile = .BuildPath(WScript.CreateObject("WScript.Shell").SpecialFolders.Item("MyDocuments"), "текстовый ::: файл.txt") Скрытый текст
Код:
Option Explicit ![]() |
Цитата:
Имеется скрипт vbs который сравнивает документы которые сдают обучающиеся. Код:
Dim path, WshShell 'Объявляем переменные |
Цитата:
Цитата:
|
kosmonavtom, Не сильно изучал Ваши коды, однако, как идея, перед открытием документа с расширением .DOCX в WORD, проанализировать, не является ли он .RTF
Вот пример функции для такого анализа
Код:
File1 = "Z:\Box_In\doc1.docx" |
Цитата:
Но нашел решение вида: Код:
On Error Resume Next 'Запускаем обработчик ошибок |
Цитата:
Цитата:
а) перед открытием проверить, существует ли этот файл в принципе, дабы не путаться в видах ошибок (коллега megaloman, впрочем, реализовал сию проверку зараз внутри функции); б) вернуть стандартную обработку ошибок (On Error Goto 0) сразу после открытия файла и обработки ошибок. megaloman, можно и просто: Код:
AllTxt = iFile.Read(Len("{\rtf")) |
Цитата Iska:
Можно. Только не забудьте: а) перед открытием проверить, существует ли этот файл в принципе, дабы не путаться в видах ошибок (коллега megaloman, впрочем, реализовал сию проверку зараз внутри функции); б) вернуть стандартную обработку ошибок (On Error Goto 0) сразу после открытия файла и обработки ошибок. » Спасибо за подсказки! :oszone: В общем вот что получилось: Код:
' Сравнение нескольких пар документов запуск сравнения и сохранение результатов сравнений в один файл |
Цитата:
Цитата:
Цитата:
Цитата:
|
Цитата Iska:
Это потому, что Вы завершаете исполнение скрипта: до того, как закрываете открытый экземпляр Word'а:» Да! Спасибо!!! Поменял местами и работает. Очень странно правда, т.к. до этого без обработчика ошибок и так работало! :laugh: Еще нужно было подставить ItogoviRezultat в строку 30 примерно: Код:
ItogRezult.SaveAs(pathPro & ItogoviRezultat) 'Сохраняем Документ Код:
' Литература: Условие http://forum.oszone.net/post-2782627.html |
Время: 19:49. |
Время: 19:49.
© OSzone.net 2001-