Microsoft Excel:

  Таблицы и VBA. Справочник.
  Вопросы и Ответы. Советы. Примеры.
Меню Заметки | VBA: Как использовать IETimer при работе с формой


Rambler's Top100


Counter CO.KZ

Если при работе с UserForm возникла необходимость в таймере, то можно использовать стандартный Excel таймер, а именно Application.OnTime. Но если Вы создаёте продукт исключительно для личного употребления, то есть вариант воспользоваться ActiveX элементом управления Internet Timer Control (ietimer.ocx), который был создан Microsoft и наличествовал в Internet Explorer 3.x и 4.x К сожалению, в последующих версиях он уже изволит отсутствовать, однако, этот файл остался доступен для скачивания и использования.

Более подробную информацию о этом(и некоторых других) контролах, можно найти в статье, ознакомившись с которой Вы сможете скачать необходимый ActiveX элемент управления.

INFO: ActiveX Controls That Are Removed from Internet Explorer 5
ИНФОРМАЦИЯ: Элементы управления ActiveX, которые удаляются из Internet Explorer 5 (машинный перевод)

P.S. Если со скачиванием таймера возникли проблемы, то можно повторить попытку, но уже используя Архив Интернета


  • После того, как Вы скачали файл ietimer.ocx, переместите(или скопируйте) его в папку

    Windows\System\ если речь идёт о Win 98, Me
    или
    Windows\System32\ если установлена OC Win 2000, XP

  • Затем, откройте рабочую книгу, в которой Вы хотите создать пользовательскую форму с таймером.
  • Перейдите в редактор VBA, для этого воспользуйтесь сочетанием клавиш ALT + F11, или в меню Сервис выберите пункт Макрос и команду Редактор Visual Basic
  • В меню Вставка/Insert выберите команду UserForm , или кликните правой кнопкой мышки и в появившемся контекстном меню выберите пункт Вставить/Insert и команду UserForm
  • В меню Сервис/Tools выберите команду Ссылки/References



  • В появившемся стандартном диалоговом окне, кликните кнопку Обзор/Browse



  • В следующем окне, в поле со списком Папка выберите папку, в которую Вы скопировали файл ietimer.ocx. Затем, выделите нужный файл или просто введите(или вставьте из буфера обмена) текст ietimer.ocx в поле Имя файла и кликните кнопку Открыть.

  • В меню Сервис/Tools выберите команду Дополнительные элементы/Additional Controls или подведите курсор мышки к панели инструментов Панель инструментов/Toolbox и кликните правой кнопкой мышки. В появившемся контекстном меню выберите команду Дополнительные элементы/Additional Controls




    Важно : вне зависимости от выбора, Панель инструментов обязательно должна отображаться на экране, иначе Вы просто не сможете воспользоваться вышеупомянутой командой. Поэтому, если панель не видна, то в меню Вид/View выберите команду Панель элементов/Toolbox или воспользуйтесь одноимённой кнопкой с панели Стандарт/Standard




  • В появившемся списке найдите и выберите следующий элемент управления Timer Object и подтвердите свой выбор нажатием кнопки OK.



  • Кликните кнопку IeTimer и расположите этот элемент управления в любом месте созданного диалогового окна.
  • Если необходимый интервал Вы хотите выставить вручную, то не снимая выделения, кликните клавишу F4 или в меню Вид выберите команду Окно свойств или просто кликните правую кнопку мышки, и в появившемся контекстном меню выберите команду Свойства



  • В поле напротив Interval введите необходимый интервал, только не забывайте, что он указывается в милисекундах.



  • И теперь, используя соответствующее событие таймера, Вы сможете осуществить необходимые действия (в примере, это вывод текущего времени)
  • Private Sub IeTimer1_Timer()
        Me.Caption = Time
    End Sub
  • Если же Вам потребуется остановить таймер, то это можно будет сделать, любым из нижеопубликованных способов :
  • IeTimer1.Interval = 0    
    IeTimer1.Visible = False
    IeTimer1.Enabled = ValFalse



    Автор : Климов Павел Юрьевич
    © 2004-2016 Климов П.Ю. Все права защищены. WebDesign & Error's Klimoff