Excel это не сложно
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
19.04.2024, 06:15:37

Войти
Интересные и полезные статьи по работе с Excel и VBA можно найти в разделе ХИТРОСТИ
33 242 Сообщений в 5 457 Тем от 6 758 Пользователей
Последний пользователь: Сергей2662
*
Перейти на сайт Хитрости Надстройка MulTEx Обучающие тренинги Наша группа ВКонтакте
Правила форума Начало Помощь Поиск Календарь Войти Регистрация Выйти
+  Excel это не сложно
|-+  Основные форумы
| |-+  Вопросы по Excel и VBA
| | |-+  Progressbar
Страниц: [1]   Вниз
Печать
Автор Тема: Progressbar  (Прочитано 4364 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Viandante
Новичок
*

Репутация: +0/-0
Офлайн Офлайн

Сообщений: 9


Просмотр профиля E-mail
« : 19.01.2015, 16:27:28 »

Добрый день уважаемые форумчане!

Есть макрос
spoiler for Hiden:
Код: (vb)
Sub LINobjecti()
      Range("C17").GoalSeek Goal:=0, ChangingCell:=Range("C3")
    Range("E17").GoalSeek Goal:=0, ChangingCell:=Range("E3")
    Range("G17").GoalSeek Goal:=0, ChangingCell:=Range("G3")
    Range("I17").GoalSeek Goal:=0, ChangingCell:=Range("I3")
    Range("K17").GoalSeek Goal:=0, ChangingCell:=Range("K3")
    Range("C36").GoalSeek Goal:=0, ChangingCell:=Range("C22")
    Range("E36").GoalSeek Goal:=0, ChangingCell:=Range("E22")
    Range("G36").GoalSeek Goal:=0, ChangingCell:=Range("G22")
    Range("I36").GoalSeek Goal:=0, ChangingCell:=Range("I22")
    Range("K36").GoalSeek Goal:=0, ChangingCell:=Range("K22")
    Range("C55").GoalSeek Goal:=0, ChangingCell:=Range("C41")
    Range("E55").GoalSeek Goal:=0, ChangingCell:=Range("E41")
    Range("G55").GoalSeek Goal:=0, ChangingCell:=Range("G41")
    Range("I55").GoalSeek Goal:=0, ChangingCell:=Range("I41")
    Range("K55").GoalSeek Goal:=0, ChangingCell:=Range("K41")
    Range("C74").GoalSeek Goal:=0, ChangingCell:=Range("C60")
    Range("E74").GoalSeek Goal:=0, ChangingCell:=Range("E60")
    Range("G74").GoalSeek Goal:=0, ChangingCell:=Range("G60")
    Range("I74").GoalSeek Goal:=0, ChangingCell:=Range("I60")
    Range("K74").GoalSeek Goal:=0, ChangingCell:=Range("K60")
    Range("C93").GoalSeek Goal:=0, ChangingCell:=Range("C79")
    Range("E93").GoalSeek Goal:=0, ChangingCell:=Range("E79")
    Range("G93").GoalSeek Goal:=0, ChangingCell:=Range("G79")
    Range("I93").GoalSeek Goal:=0, ChangingCell:=Range("I79")
    Range("K93").GoalSeek Goal:=0, ChangingCell:=Range("K79")
    Range("C112").GoalSeek Goal:=0, ChangingCell:=Range("C98")
    Range("E112").GoalSeek Goal:=0, ChangingCell:=Range("E98")
    Range("G112").GoalSeek Goal:=0, ChangingCell:=Range("G98")
    Range("I112").GoalSeek Goal:=0, ChangingCell:=Range("I98")
    Range("K112").GoalSeek Goal:=0, ChangingCell:=Range("K98")
    Range("C131").GoalSeek Goal:=0, ChangingCell:=Range("C117")
    Range("E131").GoalSeek Goal:=0, ChangingCell:=Range("E117")
    Range("G131").GoalSeek Goal:=0, ChangingCell:=Range("G117")
    Range("I131").GoalSeek Goal:=0, ChangingCell:=Range("I117")
    Range("K131").GoalSeek Goal:=0, ChangingCell:=Range("K117")
    Range("C150").GoalSeek Goal:=0, ChangingCell:=Range("C136")
    Range("E150").GoalSeek Goal:=0, ChangingCell:=Range("E136")
    Range("G150").GoalSeek Goal:=0, ChangingCell:=Range("G136")
    Range("I150").GoalSeek Goal:=0, ChangingCell:=Range("I136")
    Range("K150").GoalSeek Goal:=0, ChangingCell:=Range("K136")
    Range("C169").GoalSeek Goal:=0, ChangingCell:=Range("C155")
    Range("E169").GoalSeek Goal:=0, ChangingCell:=Range("E155")
    Range("G169").GoalSeek Goal:=0, ChangingCell:=Range("G155")
    Range("I169").GoalSeek Goal:=0, ChangingCell:=Range("I155")
    Range("K169").GoalSeek Goal:=0, ChangingCell:=Range("K155")
    Range("C188").GoalSeek Goal:=0, ChangingCell:=Range("C174")
    Range("E188").GoalSeek Goal:=0, ChangingCell:=Range("E174")
    Range("G188").GoalSeek Goal:=0, ChangingCell:=Range("G174")
    Range("I188").GoalSeek Goal:=0, ChangingCell:=Range("I174")
    Range("K188").GoalSeek Goal:=0, ChangingCell:=Range("K174")
    Range("C207").GoalSeek Goal:=0, ChangingCell:=Range("C193")
    Range("E207").GoalSeek Goal:=0, ChangingCell:=Range("E193")
    Range("G207").GoalSeek Goal:=0, ChangingCell:=Range("G193")
    Range("I207").GoalSeek Goal:=0, ChangingCell:=Range("I193")
    Range("K207").GoalSeek Goal:=0, ChangingCell:=Range("K193")
    Range("C226").GoalSeek Goal:=0, ChangingCell:=Range("C212")
    Range("E226").GoalSeek Goal:=0, ChangingCell:=Range("E212")
    Range("G226").GoalSeek Goal:=0, ChangingCell:=Range("G212")
    Range("I226").GoalSeek Goal:=0, ChangingCell:=Range("I212")
    Range("K226").GoalSeek Goal:=0, ChangingCell:=Range("K212")
    Range("C245").GoalSeek Goal:=0, ChangingCell:=Range("C231")
    Range("E245").GoalSeek Goal:=0, ChangingCell:=Range("E231")
    Range("G245").GoalSeek Goal:=0, ChangingCell:=Range("G231")
    Range("I245").GoalSeek Goal:=0, ChangingCell:=Range("I231")
    Range("K245").GoalSeek Goal:=0, ChangingCell:=Range("K231")
    Range("C264").GoalSeek Goal:=0, ChangingCell:=Range("C250")
    Range("E264").GoalSeek Goal:=0, ChangingCell:=Range("E250")
    Range("G264").GoalSeek Goal:=0, ChangingCell:=Range("G250")
    Range("I264").GoalSeek Goal:=0, ChangingCell:=Range("I250")
    Range("K264").GoalSeek Goal:=0, ChangingCell:=Range("K250")
    Range("C283").GoalSeek Goal:=0, ChangingCell:=Range("C269")
    Range("E283").GoalSeek Goal:=0, ChangingCell:=Range("E269")
    Range("G283").GoalSeek Goal:=0, ChangingCell:=Range("G269")
    Range("I283").GoalSeek Goal:=0, ChangingCell:=Range("I269")
    Range("K283").GoalSeek Goal:=0, ChangingCell:=Range("K269")
    Range("C302").GoalSeek Goal:=0, ChangingCell:=Range("C288")
    Range("E302").GoalSeek Goal:=0, ChangingCell:=Range("E288")
    Range("G302").GoalSeek Goal:=0, ChangingCell:=Range("G288")
    Range("I302").GoalSeek Goal:=0, ChangingCell:=Range("I288")
    Range("K302").GoalSeek Goal:=0, ChangingCell:=Range("K288")
    Range("C321").GoalSeek Goal:=0, ChangingCell:=Range("C307")
    Range("E321").GoalSeek Goal:=0, ChangingCell:=Range("E307")
    Range("G321").GoalSeek Goal:=0, ChangingCell:=Range("G307")
    Range("I321").GoalSeek Goal:=0, ChangingCell:=Range("I307")
    Range("K321").GoalSeek Goal:=0, ChangingCell:=Range("K307")
   End Sub

Возможно ли привязать к нему прогресс бар с временем до окончания выполнения макроса?
Спасибо!
Пробовал сделать как здесь http://excelvba.ru/tools/ProgressIndicator , но ничего не вышло((

« Последнее редактирование: 19.01.2015, 16:38:35 от vikttur » Записан
Дмитрий Щербаков(The_Prist)
Администратор
Ветеран
*****

Репутация: +485/-0
Офлайн Офлайн

Сообщений: 5 831



Просмотр профиля WWW
« Ответ #1 : 19.01.2015, 17:08:41 »

Прогресс-бар можно применить к циклам. У Вас их нет. Если построить код как-то так:
Код: (vb)
Sub LINobjecti()
    Dim avCols, avRowsDest, avRowsChCell
    Dim lr As Long, lc As Long, li As Long, lall As Long
    avCols = Array("C", "E", "G", "I", "K")
    avRowsDest = Array(17, 36, 55, 74, 93, 112, 131, 150, 169, 188, 207, 226, 245, 264, 283, 302, 321)
    avRowsChCell = Array(3, 22, 41, 60, 79, 98, 117, 136, 155, 174, 193, 212, 231, 250, 269, 288, 307)

    lall = (UBound(avCols) + 1) * (UBound(avRowsDest) + 1)
    For lc = LBound(avCols) To UBound(avCols)
        For lr = LBound(avRowsDest) To UBound(avRowsDest)
            li = li + 1
            Range(avCols(lc) & avRowsDest(lr)).GoalSeek Goal:=0, ChangingCell:=Range(avCols(lc) & avRowsChCell(lr))
            'здесь показываем наш прогресс-бар
        Next lr
    Next lc
End Sub

то можно уже пробовать внедрять прогресс-бар
Записан

Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
Пункты приёма Спасибов:    -41001332272872  -R298726502453
Страниц: [1]   Вверх
Печать
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2011, Simple Machines Valid XHTML 1.0! Valid CSS!
Яндекс.Метрика Рейтинг@Mail.ru