Страницы: 1
RSS
прогрессбар - простая форма, открытый код
 
воодушевленный интересом к календарю :)  
 
и подвинутый очередным отказом работы надстройки, связанным с отсутствием библиотек после чистки машины каким-то там клинером(не у меня, у сотрудника)..  
 
вот, сподобился. мож кому пригодится.  
 
прогрессбар на простых элементах, с возможностью прерывания процесса  
пример вызывающего кода присутствует..
Живи и дай жить..
 
Слэн, спасибо! Ждём Мулю. :-)
 
Неплохо получилось.  
 
PS: 4 раза подряд нажал кнопку запуска на листе (с интервалом в секунду, не дожидаясь окончания работы прогресс-бара) - Excel 2003 вылетел.  
(иногда достаточно запустить 3 раза подряд)
 
А как этот прогрессбар под ActiveSheet.Calculate подстроить? Или под отдельно выполняющийся макрос?
 
(Если интересно) по ссылке ниже я приводил пример ПБ. Скажу честно, в данный момент я бы кое-что (одну строку) изменил в коде своего ПБ. Кстати, в моем ПБ прерывания нет : )  
 
Старался максимально упростить использование ПБ. В итоге, для того, чтобы задействовать ПБ в цикле достаточно одной строки.  
 
http://www.planetaexcel.ru/forum.php?thread_id=5513
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
посмотрел. да, тоже хорошо.
Живи и дай жить..
 
{quote}{login=}{date=29.07.2011 01:18}{thema=}{post}А как этот прогрессбар под ActiveSheet.Calculate подстроить? Или под отдельно выполняющийся макрос?{/post}{/quote}  
 
пример вызова( читай  - отдельновыполняющийся макрос) смотрите в проекте  
 
под калькуляцию все уже микрософт придумал..
Живи и дай жить..
 
{quote}{login=EducatedFool}{date=29.07.2011 01:13}{thema=}{post}Неплохо получилось.  
 
PS: 4 раза подряд нажал кнопку запуска на листе (с интервалом в секунду, не дожидаясь окончания работы прогресс-бара) - Excel 2003 вылетел.  
(иногда достаточно запустить 3 раза подряд){/post}{/quote}  
 
а зачем нажимали?:) кнопка просто для демонстрации - использование предполагается программное..
Живи и дай жить..
 
Вот где настоящий прогресс-бар:  
http://www.youtube.com/watch?v=VqAPk8fpYUw  
 
Кто сможет сотворить такой на VBA?
 
некоторые трудности первоначально возникли с прерыванием процесса нажатием крестика..
Живи и дай жить..
 
{quote}{login=nerv}{date=29.07.2011 01:23}{thema=to слэн}{post}(Если интересно) по ссылке ниже я приводил пример ПБ. Скажу честно, в данный момент я бы кое-что (одну строку) изменил в коде своего ПБ. Кстати, в моем ПБ прерывания нет : )  
 
Старался максимально упростить использование ПБ. В итоге, для того, чтобы задействовать ПБ в цикле достаточно одной строки.  
 
http://www.planetaexcel.ru/forum.php?thread_id=5513{/post}{/quote}  
 
а я кстати тоже так делал, даже сдесь выкладывал - в игрушке, там снежки надо было ловить. тока я использовал два лейбла, один увеличивается, другой уменьшается. и процент внутри писался.. так вроде визуально привычнее
Живи и дай жить..
 
{quote}{login=Юрий М}{date=29.07.2011 01:07}{thema=}{post}Слэн, спасибо! Ждём Мулю. :-){/post}{/quote}  
Доброго здравия всем настоящим мужчинам и милым дамам!  
Что соскучились! Вот он я.  
Вы не  поверите. Но вопросов и пожеланий по этой теме, у меня нет!!!  
А вот по календарю - последняя моя просьба, зависла в воздухе.  
С ув. Муля "не нервируй"!
 
Самый короткий код прогрессбара имеет две команды:  
 
Application.StatusBar = "Название процесса: " & CInt(100 * CDbl(j) / CDbl(n)) & "%" & String(CInt(20 * CDbl(j) / CDbl(n)), ChrW(9632)) & String(IIf((20 - (20 * CDbl(j) \ CDbl(n))) < 0, 0, 20 - (20 * CDbl(j) \ CDbl(n))), ChrW(9633))  
 
где i -счетчик цикла, n - максимальное значение i.  
 
И в конце перед выходом Application.StatusBar = False
 
но согласитесь, он немногих устраивает - не бросается в глаза и нет возможности прерывания..
Живи и дай жить..
 
Да конечно, я до кучи, чтобы варианты были.    
Касательно прерывания не согласен, прогрессбар - это индикатор, а прерывание это уже на рабочий цикл. Вопрос зачем прерывать, если процесс идет? Если код в зацикливании можно и Ctrl-Break.
 
to EducatedFool: улыбнуло : )  
 
to слэн: а можно ссылку на "снежинки"?)  
 
Насчет прерывания согласен с VovaK. Иной раз пользователь так может прервать, что мало не покажется) Лучше пусть сидит и ждет до конца как "она" ползет : )
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
 
бывает что руки быстрее чем голова - процесс запущен, ан база не обновлена, например. чего же ждать? да к тому же чтобы как попало не прерывали, лучше я сам..  
 
вот версия снежинок - не совсем рабочая, отладочная скорей, но сейчас она подрукой..
Живи и дай жить..
 
Ха. Здорово! Как доделаете, обязательно выкладывайте. А то сейчас играть не возможно, ошибками плюется.
Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


https://github.com/nervgh
Страницы: 1
Наверх