Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 13.01.2009, 19:47   #1
Dymytry
Новичок
Джуниор
 
Регистрация: 13.01.2009
Сообщений: 3
По умолчанию Событие неручного обновления ячейки.

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

Помогите с Экселем, пожалуйста.

Есть такая тема как событие, возникающее при обновлении ячейки. С ним можно работать через функцию:

Private Sub Worksheet_Change(ByVal Target As Range)
MsgBox "You just changed " & Target.Address
End Sub

Однако в моем случае ячейка обновляется не вручную, а автоматически. У сторонней программы есть интерфейс который выводит в Эксель данные автоматом. Поэтому ячейки сами постоянно обновляются. Однако на это событие приведенный код не действует. Вероятно в этой функции есть обязательное выделение ячейки.

Можно ли его как-то зацепить обновление в моем случае?
Dymytry вне форума
Старый 13.01.2009, 19:57   #2
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Может, так (если после вывода информации на лист происходит пересчёт хоть одной ячейки на этом листе):

Код:
Private Sub Worksheet_Calculate()
    MsgBox Cells(3, 4) ' вывод значения ячейки сразу после её изменения
End Sub
Ну а если на листе нет формул - то добавьте хоть одну, которая будет брать значение для вычисления из обновляемой ячейки.

Последний раз редактировалось EducatedFool; 13.01.2009 в 20:00.
EducatedFool вне форума
Старый 14.01.2009, 06:24   #3
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Цитата:
Вероятно в этой функции есть обязательное выделение ячейки.
Нет, это не так. Если, например, значение в контролируемой ячейке изменяет макрос (без выделения ячейки), то событие Worksheet_Change будет обработано (конечно, если обработка не запрещена).
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вытащить обновления из сборок Elm0 Свободное общение 12 12.11.2008 11:08
Ошибка обновления... SanPol БД в Delphi 1 27.08.2008 11:43
Обновления WindowsXP bizpartner Софт 8 19.08.2008 18:47
Обновления в блоге Fainder О форуме и сайтах клуба 4 05.06.2008 19:31
Как разделить число и текст в одной ячейки на две ячейки. neboskreb Microsoft Office Excel 2 15.04.2008 19:39