Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Progress Bar - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Progress Bar (Макросы/Sub)
Progress Bar
ant6729 Дата: Вторник, 11.10.2016, 00:08 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Не могу понять, как при исполнении макроса

[vba]
Код


Sub Макрос1000()

    UserForm1.Show
    Application.Run "'2.xlsm'!Макрос444"
    Application.Run "'2.xlsm'!Макрос3"
    Application.Run "'2.xlsm'!Макрос5"
   
    MsgBox "Всё получится"
    End Sub
  
[/vba]

Сделать полоску отображения процесса выполнения данного макроса.

Форма, вроде, есть. Как использовать её, подскажите, пожалуйста.
 
Ответить
СообщениеНе могу понять, как при исполнении макроса

[vba]
Код


Sub Макрос1000()

    UserForm1.Show
    Application.Run "'2.xlsm'!Макрос444"
    Application.Run "'2.xlsm'!Макрос3"
    Application.Run "'2.xlsm'!Макрос5"
   
    MsgBox "Всё получится"
    End Sub
  
[/vba]

Сделать полоску отображения процесса выполнения данного макроса.

Форма, вроде, есть. Как использовать её, подскажите, пожалуйста.

Автор - ant6729
Дата добавления - 11.10.2016 в 00:08
ant6729 Дата: Вторник, 11.10.2016, 00:09 | Сообщение № 2
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Можно в % полоску выполнения процесса.
 
Ответить
СообщениеМожно в % полоску выполнения процесса.

Автор - ant6729
Дата добавления - 11.10.2016 в 00:09
Pelena Дата: Вторник, 11.10.2016, 09:51 | Сообщение № 3
Группа: Модераторы
Ранг: Экселист
Сообщений: 9879
Репутация: 2265 ±
Замечаний: 0% ±

Excel 2010 & Mac Excel 2011
Примеры прогресс бара есть на форуме. Например, http://www.excelworld.ru/forum/10-14144-119332-16-1415822702
Здесь тоже можно почитать http://www.excelworld.ru/forum/10-19371-1


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеПримеры прогресс бара есть на форуме. Например, http://www.excelworld.ru/forum/10-14144-119332-16-1415822702
Здесь тоже можно почитать http://www.excelworld.ru/forum/10-19371-1

Автор - Pelena
Дата добавления - 11.10.2016 в 09:51
ant6729 Дата: Вторник, 11.10.2016, 22:05 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 151
Репутация: 0 ±
Замечаний: 40% ±

Excel 2010
Да, это они. Но все прогресс бары связаны с внесением данных от 1 до какого-то числа.

А мне нужен прогресс бар на процесс.
Но мне кажется, это нереально: чтобы макрос сначала прикинул время собственного выполнения, а потом отобразил процесс собственного выолпнения.
Как-то так.
 
Ответить
СообщениеДа, это они. Но все прогресс бары связаны с внесением данных от 1 до какого-то числа.

А мне нужен прогресс бар на процесс.
Но мне кажется, это нереально: чтобы макрос сначала прикинул время собственного выполнения, а потом отобразил процесс собственного выолпнения.
Как-то так.

Автор - ant6729
Дата добавления - 11.10.2016 в 22:05
_Boroda_ Дата: Вторник, 11.10.2016, 23:02 | Сообщение № 5
Группа: Модераторы
Ранг: Экселист
Сообщений: 9377
Репутация: 3949 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
мне кажется, это нереально: чтобы макрос сначала прикинул время собственного выполнения, а потом отобразил процесс собственного выолпнения.

Ну почему же? Смотря что в макросах 444, 3 и 5. Если там циклы, то засекаем время работы 1/1000 (например) части цикла и умножаем на 1000 - вот Вам и примерное время обработки.
Если не циклы, а действия a,b,c,d,..., то приблизительно время можно посчитать так (как вариант) - засечь время на каждую операция на своем компьютере (например, a=10мксек, b=50мксек, c=70мксек, d=3мксек, ... Всего 500мксек). Все это записать в макрос. При новом запуске засечь время обработки действия а. Пусть оно будет 13мксек. Тогда весь макрос примерно отработает 500/10*13=650мксек.

А вообще все эти прогрессбары от лукавого. Они могут в разы увеличивать время отработки макроса.


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
мне кажется, это нереально: чтобы макрос сначала прикинул время собственного выполнения, а потом отобразил процесс собственного выолпнения.

Ну почему же? Смотря что в макросах 444, 3 и 5. Если там циклы, то засекаем время работы 1/1000 (например) части цикла и умножаем на 1000 - вот Вам и примерное время обработки.
Если не циклы, а действия a,b,c,d,..., то приблизительно время можно посчитать так (как вариант) - засечь время на каждую операция на своем компьютере (например, a=10мксек, b=50мксек, c=70мксек, d=3мксек, ... Всего 500мксек). Все это записать в макрос. При новом запуске засечь время обработки действия а. Пусть оно будет 13мксек. Тогда весь макрос примерно отработает 500/10*13=650мксек.

А вообще все эти прогрессбары от лукавого. Они могут в разы увеличивать время отработки макроса.

Автор - _Boroda_
Дата добавления - 11.10.2016 в 23:02
Матраскин Дата: Среда, 12.10.2016, 11:34 | Сообщение № 6
Группа: Друзья
Ранг: Обитатель
Сообщений: 341
Репутация: 63 ±
Замечаний: 0% ±

20xx
Выполнился цикл1 - пишем на форме цикл1 готов, выполнилось действие а1 - пишем действие а1 готово, вот вам и весь прогрессБАР.
Можно и полоску приматать, и заполнять её чем то зачем то.


в интернете опять кто-то не прав
 
Ответить
СообщениеВыполнился цикл1 - пишем на форме цикл1 готов, выполнилось действие а1 - пишем действие а1 готово, вот вам и весь прогрессБАР.
Можно и полоску приматать, и заполнять её чем то зачем то.

Автор - Матраскин
Дата добавления - 12.10.2016 в 11:34
miver Дата: Среда, 12.10.2016, 14:39 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 183
Репутация: 37 ±
Замечаний: 0% ±

Excel 2010
ant6729, Еще ссылка
http://excelvba.ru/tools/ProgressIndicator
 
Ответить
Сообщениеant6729, Еще ссылка
http://excelvba.ru/tools/ProgressIndicator

Автор - miver
Дата добавления - 12.10.2016 в 14:39
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Progress Bar (Макросы/Sub)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2016 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!