Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Программирование, связанное с MS Office > Мигающие ячейки в Excel


Автор: andMegaM 23.10.2006, 16:02
Здравствуйте. У меня есть код:

Код

Sub ASS()
Application.OnTime Now + TimeValue("00:00:01"), "ASS"
a = Format(Now, "ss")
df = a Mod 2
If df = 0 Then Cells(1, 2).Interior.ColorIndex = 3
If df = 1 Then Cells(1, 2).Interior.ColorIndex = 6
End Sub


После запуска данного кода начинает мигать ячейка Cells(1, 2) с интервалом в 1 секунду, то 

желтым, то красным цветом (привлекая к себе внимание). Мне нужно сделать следующее:

1) К примеру если в ячейке Cells(i, 1) {i - для перебора строк} есть значениие больше 10, 

то тогда начала бы мигать ячейка Cells(i, 2) {i - для перебора строк}.

2) Как прикрепить код к определенной книге и чтобы он(код) запускался при ее открытии?
 smile 
P.S. С функциями даты и времени работать не приходилось

Автор: RockClimber 23.10.2006, 21:16
В редакторе VBA слева есть Project Window, в нем в виде древовидной структуры представлены все открытые книги. Выбираете нужную книгу, в ней - папочку Microsoft Excel Objects, а в папочке - ThisWorkbook. Кликаете на ней дважды, вверху над окном редактора в левом выпадающем списке выбираете Workbook, после чего автоматически появится функция Workbook_Open(). Эта функция будет выполнятся при каждом открытии книги. Для того, чтобы она не выполнялась, перед открытием книги надо выполнить строчку
Код

Application.EnableEvents=False

(Свойство EnableEvents отвечает за выполнение обработчиков событий - события обрабатаваются только тогда, когда свойство равно True)

Автор: andMegaM 24.10.2006, 10:46
Вот что получилось, но ничего не не работает
Код

Application.EnableEvents = False
Private Sub Workbook_Open()
    
Application.OnTime Now + TimeValue("00:00:01"), "[color=red]ASS[/color]"
a = Format(Now, "ss")
df = a Mod 2
If df = 0 Then Cells(1, 2).Interior.ColorIndex = 3
If df = 1 Then Cells(1, 2).Interior.ColorIndex = 6

End Sub

Может событие Open для рабочей книги не так сделал???

Автор: Aloha 24.10.2006, 12:27
andMegaM

Загляни в личный почтовый ящик. Там со вчерашнего дня лежит кое-какая инфа.

Автор: RockClimber 28.10.2006, 18:59
andMegaM, 
Сначала выполни строчку 
Код

Application.EnableEvents = True
потом открывай книгу и не трогай стойство EnableEvents. Все должно будет работать.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)