|
|
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
Вопрос: хочется в процессе выполнения макроса дать возможность пользователю дополнить данные. т.е. считаем-считаем наткнулись на неверные/неполные данные предупредили пользователя ждём пока он не даст нам знать что всё нормально как оформить это ожидание не прерывая работу скрипта? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2012, 16:21 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
Код: vbnet 1. Код: vbnet 1. 2. 3. 4. 5. 6. Разрешением продолжения работы скрипта является установка CanContinue в True ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2012, 16:31 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
Shocker.Pro , опасно... а ну как закроет юзер форму ввода, да так, что CanContinue не установится в True? Если от юзера нужна достаточно простая реакция - лучше использовать MsgBox/InputBox... иначе я бы открывал форму ввода модально и в качестве флага продолжения использовал её IsLoaded. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2012, 18:10 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
Akina, Я бы вообще разделял макрос на два, но вишь, ТС не хочет. MsgBox ему не подойдет - юзер должен что-то сделать. Ну а закрытие формы - это на усмотрение ТС - мы же не знаем его алгоритмов и причин, которые повлекут установку CanContinue ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.02.2012, 18:18 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
2: Shocker.Pro c DoEvent щас попробую... разделять макрос на 2 куска - не вариант, иначе придется его дробить кусков на 10+ ибо проверок много 2: Akina нет никакой формы ввода. есть "потоковая" обработка массива Ексель файлов, если в данных косяк. надо остановиться, дать пользователю заролнить/поправить и пустить "поток" дальше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2012, 09:09 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
lu0нет никакой формы ввода. есть "потоковая" обработка массива Ексель файлов, если в данных косяк. надо остановиться, дать пользователю заролнить/поправить Заполнить/поправить что и где? или он посередь раобты твоего макроса должен полезть в листы и править там исходные данные? Если так - я бы посоветовал стереть к чертям собачьим весь код и начать писАть заново. Но уже по принципу - сначала проверяем все данные, убеждаемся, что есть всё необходимое для расчётов, и только потом запускаем расчёт - который заведомо не придётся прерывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2012, 09:33 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
Akinaон посередь раобты твоего макроса должен полезть в листы и править там исходные данные абсолютно точно Akinaсначала проверяем все данные, убеждаемся, что есть всё необходимое для расчётов, и только потом запускаем расчёт - который заведомо не придётся прерывать. даже если предположить, что Вы меня убедите, я не смогу убедить руководство увеличить время операции вдвое. согласитесь, 4часа вместо 2х - это сильно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2012, 09:45 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
Вашему руководству нужны шашечки?.. а то, что они на тракторе - никого не интересует? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2012, 09:50 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
lu04часа вместо 2х - это сильноа может сократить время до 5 минут? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2012, 09:59 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
AndreTMВашему руководству нужны шашечки?.. а то, что они на тракторе - никого не интересует? нужен результат. в приемлимое время. сравните: 1. после запуска процесса оператор 1-2 раза по сигналу подойдёт и исправит букву в названии - это займёт 2 часа 2. запускается проверка на 2 часа оператор вносит те-же 2 исправления, которых, кстати, может и не быть, а ПОТОМ идёт загрузка ещё на 2 часа ... а теперь пойдите и убедите "своё" руководство, что теперь благодаря более правильному и логичному коду, на переписку которого, кстати, тоже было потрачено время, господин начальнок будет получать отчёт, с которым ему идти выше на 2 часа пожже. подсказать куда вас отправят ??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2012, 10:01 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
Shocker.Prolu04часа вместо 2х - это сильноа может сократить время до 5 минут? основные временные издержки идут на открытии/закрытии файлов, коих несколько раз по 300-400 штук ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2012, 10:03 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
Макрос на 2 часа это что-то! Я не знаю Ваши задачи, но думаю надо менять принципы обработки данных и может быть и технологии. На крайний случай уйти от макросов к компилируемому коду. Сугубо моё мнение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2012, 10:31 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
ДмитМакрос на 2 часа это что-то! Я не знаю Ваши задачи, но думаю надо менять принципы обработки данных и может быть и технологии. На крайний случай уйти от макросов к компилируемому коду. Сугубо моё мнение. абсолюно с Вами согласен ... но пока нет свободного времени на переработку... вот и "подпиливаю надфилем" чо есть ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2012, 10:50 |
|
||
|
Пауза в работе макроса
|
|||
|---|---|---|---|
|
#18+
lu02: Shocker.Pro c DoEvent щас попробую... попробывал ... всё нормально, только вот Application.OnKey не корректно отрабатывает. Видно, что перехват идёт, но в указанную процедуру не попадает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.02.2012, 13:28 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=37667140&tid=2175996]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
32ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 363ms |

| 0 / 0 |
