Модераторы: mihanik
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Заставить ячейку мигать при наступлении даты? Excel. Настройка для учета по срокам! 
:(
    Опции темы
Алекасандр
Дата 26.9.2006, 12:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 26.9.2006

Репутация: нет
Всего: нет



Мы ведем учет в таблицах Ехсел по конторольным датам. При наступлении (по календарю !!!)установленной заранее даты в ячейке-она должна либо изменить цвет , либо начать мигать, привлекая внимание к себе. После выполнения запланированных работ на этот день- менеджер вручную гасит ее , меняя цвет.
Проблема в привязывании к календарю. Мигающую ячейку я нашел. Помогите сделать этот скрипт!!
Александр ####
ICQ ####

Это сообщение отредактировал(а) cardinal - 26.9.2006, 14:10
PM MAIL   Вверх
ИгнатьевАлексей
Дата 26.9.2006, 15:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 369
Регистрация: 18.11.2005

Репутация: 2
Всего: 3



Я бы так сделал. При открытии документа выполняется процедура, которая сравнивает содержимое необходимых ячеек с текущей датой (функция Date() ) и изменяет необходимое свойство нужный ячеек.


--------------------
Vingrad - FOREVER !!! 

"Как вы яхту назовете - так она и поплывет!" 
 Капитан Врунгель 
PM MAIL   Вверх
Алекасандр
Дата 26.9.2006, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 26.9.2006

Репутация: нет
Всего: нет



а как конкретно прописать макрос?
PM MAIL   Вверх
Izuver
Дата 26.9.2006, 22:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 352
Регистрация: 13.6.2006
Где: Омск

Репутация: 2
Всего: 2



Цитата(Алекасандр @ 26.9.2006,  12:49)
Мы ведем учет в таблицах Ехсел по конторольным датам. При наступлении (по календарю !!!)установленной заранее даты в ячейке-она должна либо изменить цвет , либо начать мигать, привлекая внимание к себе. После выполнения запланированных работ на этот день- менеджер вручную гасит ее , меняя цвет.
Проблема в привязывании к календарю. Мигающую ячейку я нашел. Помогите сделать этот скрипт!!
Александр ####
ICQ ####

Если скажем, что в А1 у тебя стоит "заранее установленная дата" (например: 21.11.2005), А2 - та ячейка котторая должна мигать. Используй "Условное форматирование" с такими условиями в А2:
Условие1:
=ЕСЛИ(A1=СЕГОДНЯ();ОСТАТ(СЕКУНДЫ(ТДАТА())/4;1)=0)
Условие2:
=ЕСЛИ(A1=СЕГОДНЯ();ОСТАТ(СЕКУНДЫ(ТДАТА())/4;1)=0,25)
Условие3:
=ЕСЛИ(A1=СЕГОДНЯ();ОСТАТ(СЕКУНДЫ(ТДАТА())/4;1)=0,5)
применяя к каждому условию разный цвет, то тогда как только с файлом будут работать, ячейка будет иметь каждую секунду 4 разных цвета. Так она будет работать сутки, которые указаны в А1. Если необходимо отключить ее руками, то скажем в В1 можно выставлять 1 или 0 и условия поменяется на:
Условие1:
=ЕСЛИ(И(A1=СЕГОДНЯ();B1=0);ОСТАТ(СЕКУНДЫ(ТДАТА())/4;1)=0)
Условие2:
=ЕСЛИ(И(A1=СЕГОДНЯ();B1=0);ОСТАТ(СЕКУНДЫ(ТДАТА())/4;1)=0,25)
Условие3:
=ЕСЛИ(И(A1=СЕГОДНЯ();B1=0);ОСТАТ(СЕКУНДЫ(ТДАТА())/4;1)=0,5)
PM MAIL ICQ   Вверх
blast99
Дата 27.9.2006, 08:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


сисадмин
*


Профиль
Группа: Участник
Сообщений: 134
Регистрация: 3.5.2005
Где: Россия, г. Ставро поль

Репутация: нет
Всего: 3



Цитата(Алекасандр @ 26.9.2006,  15:46)
а как конкретно прописать макрос?

В меню: Вид\Панели инструментов\Элементы управления.

В появившейся панели нажимаешь - "Исходный текст". В появившимся окне кода, сверху, есть два выпадающих списка - Object и Procedure.

Object - это к какому объекту ты будешь описывать действия, а Procedure - это при каком собитии/случае код будет выполняться.

В первом списке выбрать Worksheet а во втором событие к-е тебе удобно. Судя по твоему описание лучше подходит - Active(при загрузке, при становлении листа активным).
Ну а далее что-то типа этого:
Код

Private Sub Worksheet_Activate()
  Worksheets("Data").Cells(1, 1).Interior.ColorIndex = 3
End Sub




Это сообщение отредактировал(а) blast99 - 27.9.2006, 08:18
--------------------
Зачастую, наши возможности ограничены лишь нашими желаниями. И ничто так не ограничивает желания, как заниженная оценка своих возможностей.
PM MAIL ICQ   Вверх
blast99
Дата 27.9.2006, 08:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


сисадмин
*


Профиль
Группа: Участник
Сообщений: 134
Регистрация: 3.5.2005
Где: Россия, г. Ставро поль

Репутация: нет
Всего: 3



Только, что вычитал, что можно перейти в редатор нажитием комбинации кнопок Alt+F11? т.е. без нажимания на "исходный текст"...  smile 

Это сообщение отредактировал(а) blast99 - 27.9.2006, 09:29
--------------------
Зачастую, наши возможности ограничены лишь нашими желаниями. И ничто так не ограничивает желания, как заниженная оценка своих возможностей.
PM MAIL ICQ   Вверх
Алекасандр
Дата 27.9.2006, 15:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 26.9.2006

Репутация: нет
Всего: нет



а нельзя сделать чтобы именно ячейка А1 в которой стоит ДАТА  27.09.06  начала мигать а не другая ячейка?

Добавлено @ 15:38 
вопрос к Михаилу!
вчера ты мне показал как отформатировать ячейку по Дате.
Есть проблема!
Если я копирую ту ячейку,которую ты прислал в рабочую учетную таблицу-она тут же у меня начинает врать безбожно-либо сразу меняет цвет либо ничего не делает. В общем не работает .В чем дело?
Может у меня там какое то автоформатирование стоит.
Кстати таблица является общей для нескольких компов-может в этом дело.

Добавлено @ 15:41 
Изувер и Бласт 99 ! Огромное Спасибо!
Попробую сделать!
PM MAIL   Вверх
Staruha
Дата 27.9.2006, 20:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: 13
Всего: 27



Рекомендую зайти Панель управления-Формат -Условное форматирование.
Izuver Опробовать времени нет,интересное решение smile 


--------------------
Возмездие настигнет
PM MAIL   Вверх
blast99
Дата 27.9.2006, 21:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


сисадмин
*


Профиль
Группа: Участник
Сообщений: 134
Регистрация: 3.5.2005
Где: Россия, г. Ставро поль

Репутация: нет
Всего: 3



Цитата(Алекасандр @ 27.9.2006,  15:33)
а нельзя сделать чтобы именно ячейка А1 в которой стоит ДАТА  27.09.06  начала мигать а не другая ячейка?

Не понял вопроса.  smile 
Ты хочешь код для мигания ячейки или код поиска нужной ?
А строка:
Код

Worksheets("Data").Cells(1, 1).Interior.ColorIndex = 3

И так меняет именно ячейку A1. Это лишь пример, как обратиться к определенной ячейке.
Разъясни, что ты хочешь? 
Найти определенную ячейку и заставить ее мигать, взяв искомое значение из другой ячейки? 
 smile 
--------------------
Зачастую, наши возможности ограничены лишь нашими желаниями. И ничто так не ограничивает желания, как заниженная оценка своих возможностей.
PM MAIL ICQ   Вверх
blast99
Дата 27.9.2006, 21:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


сисадмин
*


Профиль
Группа: Участник
Сообщений: 134
Регистрация: 3.5.2005
Где: Россия, г. Ставро поль

Репутация: нет
Всего: 3



Кстати, вот код чтобы manager далеко не лез менять цвет, а просто дважды кликнул по ячейке и она "погасла":
Код

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

    If ActiveCell.Interior.ColorIndex = 3 Then
        ActiveCell.Interior.ColorIndex = 0
    Else
        ActiveCell.Interior.ColorIndex = 3
    End If
  
End Sub

 Можешь так же использовать ActiveCell.ClearFormats, если удобно.
Ну и конечно можно добавить своих условий.
--------------------
Зачастую, наши возможности ограничены лишь нашими желаниями. И ничто так не ограничивает желания, как заниженная оценка своих возможностей.
PM MAIL ICQ   Вверх
Алекасандр
Дата 28.9.2006, 19:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 26.9.2006

Репутация: нет
Всего: нет



Сделал. Но не пойму - иногда работает  иногда нет.Где-то ошибка.Особенно если эту  ячейку , в которой прописана ДАТА скопируешь из одного документа  и вставляешь в другой.Либо перестает реагировать, либо сразу начинает моргать.
Может кто-нибудь прислать нормально работающую ячейку  уже в Ехселе ? Буду очень признателен. А я испытаю ее работу в рабочих документах -там надо контролировать  по ДАТЕ  порядка нескольких сотен  позиций.  [email protected]
PM MAIL   Вверх
RockClimber
Дата 29.9.2006, 21:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 848
Регистрация: 5.5.2006
Где: планета 013 в тен туре

Репутация: 7
Всего: 15



Если мигание ячейки прописано в макросе, то в другую книгу Excel нужно копировать не только ячейку, но и макрос тоже. А если моргание прописано в формуле, а формула - в копируемой ячейке, то тогда вполне возможно неадекватрое поведение. Как вариант - сохранить текст макроса в файле personal.xls, а в ячейку вставлять уже формулу из этого макроса.


--------------------
Хорошо кинутый дятел далеко летит, крепко встревает, долго торчит.
PM MAIL GTalk   Вверх
Staruha
Дата 1.10.2006, 22:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1292
Регистрация: 1.2.2004
Где: Казань

Репутация: 13
Всего: 27



Условное форматирование

Присоединённый файл ( Кол-во скачиваний: 33 )
Присоединённый файл  _____1.rar 1,55 Kb


--------------------
Возмездие настигнет
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Программирование, связанное с MS Office"
mihanik staruha

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами



  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • Оставляйте свои записи в "Книге отзывов о работе администрации"
  • А вот тут лежит FAQ нашего подраздела


Если Вам понравилась атмосфера форума, заходите к нам чаще!
С уважением mihanik и staruha.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Программирование, связанное с MS Office | Следующая тема »


 




[ Время генерации скрипта: 0.1745 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.