Гость
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Disk Full / 15 сообщений из 15, страница 1 из 1
08.09.2014, 10:48
    #38740255
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
Здравствуйте.
Есть код VBA, который копирует, обновляет и удаляет Excel файлы. Каждый день определенное количество файлов. Иногда всплывает ошибка: Disk full. Исправляю так: Жму Debug – далее Плэй. И запрос выполняется дальше. Как поправить код, что бы он не останавливался?
...
Рейтинг: 0 / 0
08.09.2014, 11:20
    #38740297
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
Руками.

Код нам угадывать?
...
Рейтинг: 0 / 0
08.09.2014, 11:21
    #38740303
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
Antonariy,

Код: vbnet
1.
2.
3.
4.
FileCopy "D:\Отчеты\null\Выпечка.xlsx", "D:\Отчеты\Сегодня\" & Date & " выпечка.xlsx"
freshlong ("D:\Отчеты\Сегодня\" & Date & " выпечка.xlsx")
FileCopy "D:\Отчеты\Сегодня\" & Date & " выпечка.xlsx", "\\fs\Отчеты\Готовые\Выпечка\" & Date & "_Выпечка.xlsx"
b = killer_old("\\fs\Отчеты\Готовые\Выпечка\", 10)
...
Рейтинг: 0 / 0
08.09.2014, 11:22
    #38740306
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
Это для одного файла. В день от 10-ти до 50 подобных обновлений может быть. Идут 1 за другим.
...
Рейтинг: 0 / 0
08.09.2014, 12:46
    #38740410
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
А где ошибка возникает?
...
Рейтинг: 0 / 0
08.09.2014, 12:51
    #38740418
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
На третей строке. В разных отчетах.
...
Рейтинг: 0 / 0
08.09.2014, 13:41
    #38740502
HandKot
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
Код: vbnet
1.
ON ERROR RESUME NEXT


но решение не фонтан. Обработчик ошибок нужен
...
Рейтинг: 0 / 0
08.09.2014, 13:53
    #38740516
The_Prist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
Im_Max,

Т.к. после Debug работает - возможно надо установить задержку после выполнения копирования:
Код: vbnet
1.
Application.Wait "00:00:01"
...
Рейтинг: 0 / 0
08.09.2014, 15:05
    #38740633
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
резюмируя вышеотписавшихся:
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
FileCopy "D:\Отчеты\null\Выпечка.xlsx", "D:\Отчеты\Сегодня\" & Date & " выпечка.xlsx"
freshlong ("D:\Отчеты\Сегодня\" & Date & " выпечка.xlsx")
on error goto trycopy:
FileCopy "D:\Отчеты\Сегодня\" & Date & " выпечка.xlsx", "\\fs\Отчеты\Готовые\Выпечка\" & Date & "_Выпечка.xlsx"
on error что там было раньше
b = killer_old("\\fs\Отчеты\Готовые\Выпечка\", 10)

...
exit sub
trycopy:
Debug.Print Err.Description
DoEvents
Resume

можно добавить счетчик, чтобы после определенного количества попыток или времени цикл завершался и как-то сигнализировал о глобальном ахтунге.
...
Рейтинг: 0 / 0
09.09.2014, 06:29
    #38741249
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
Antonariy,

Я плохо в ВБА разбираюсь.
Но чютье мне подсказывает что здесь:
Код: vbnet
1.
on error что там было раньше


должно быть что-то конкретное? Или прям так русскими буквами оставить?
...
Рейтинг: 0 / 0
09.09.2014, 08:03
    #38741273
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
Im_MaxAntonariy,

Я плохо в ВБА разбираюсь.
Но чютье мне подсказывает что здесь:
Код: vbnet
1.
on error что там было раньше



должно быть что-то конкретное? Или прям так русскими буквами оставить?походу ничего не было. Значит on error goto 0.
...
Рейтинг: 0 / 0
09.09.2014, 11:15
    #38741434
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
on error goto trycopy:

exit sub
trycopy:
Debug.Print Err.Description
DoEvents
Resume


Если не сложно, кратко напишите, что этот код будет делать?
...
Рейтинг: 0 / 0
09.09.2014, 11:41
    #38741478
Antonariy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
при возникновении ошибки во время копирования распечатает ее текст, подождет мгновение, попробует снова.
...
Рейтинг: 0 / 0
12.09.2014, 06:26
    #38744792
Im_Max
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
Всем большое спасибо. 3 дня пока без ошибок все отрабатывает.
...
Рейтинг: 0 / 0
12.09.2014, 08:12
    #38744815
HandKot
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Disk Full
Im_MaxВсем большое спасибо. 3 дня пока без ошибок все отрабатывает.
главное - лишь бы правильно!!!
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Disk Full / 15 сообщений из 15, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]