Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Событие програмного изменения ячейки
 
Доброго дня всем!

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

К примеру ячейка А1 связана с комбобоксом и изменяется значение в комбобоксе, данные в А1 тоже изменятся.
Какое событие может быть при этом,

   так как событие   ComboBox5_Chenge() не подходит,
 а событие Worksheet_Change(ByVal Target As range) работает только при изменении пользователем

зранее спасибо
 
Цитата
Artmasterpro написал:
а событие Worksheet_Change(ByVal Target As range) работает только при изменении пользователем
Это не так.
 
Цитата
Artmasterpro написал:
ComboBox5_Chenge() не подходит
Почему?
 
#2 и #3 - сводят на нет все попытки  :-)  но я полностью с ними солидарен.
Изменено: БМВ - 28 Апр 2020 18:17:25
По вопросам из тем форума, личку не читаю.
 
Вариант: создать на листе ТекстБокс (скрыть его), привязать к ячейке А1 и отслеживать событие Change этого ТекстБокса.
 
Цитата
Юрий М написал:
создать на листе ТекстБокс
и сработает? я че-то не уверен, да и чем это отличается от Worksheet_Change?
Изменено: БМВ - 28 Апр 2020 19:22:43
По вопросам из тем форума, личку не читаю.
 
Юр, зачем?
При изменении комбо возникает ComboBox5_Change().
При изменении LinkedCell также возникает ComboBox5_Change().
НО
Цитата
Artmasterpro написал:
событие   ComboBox5_Chenge() не подходит
Правда, я склоняюсь к мысли, что кто-то готовить не умеет.
 
Цитата
БМВ написал:
и чем это отличается от Worksheet_Change
Миш, тем, что сработает.  :D
 
RAN, Андрей, чисто гипотетически
Допустим при выборке чего-то из чего-то, что-то запускается и меняет несколько ячеек в том числе и заветную
это надо обработать, почему не обработать  Worksheet_Change это вопос ТС,
Чтоб не плодить проверку в обработке события, можно использовать вариант Юры, каждой такой ячейке свое скрытый текст бокс. и обработка события его изменения.
Имеет место, но ........  
По вопросам из тем форума, личку не читаю.
 
Миш, я сам  столкнулся с тем, что при изменении залинкованной ячейки при помощи КомбоБокс, событие Сhange на листе не наступает. Поэтому и предлагаю вариант с промежуточным контролом. Кстати, очень полехзня штука при получении данных при помощи DDE )
 
Туда нет, зато обратно да.
А отслеживать что текстбокс, что комбо...
 
Тут вот какая история: если следовать буквально названию темы:
Цитата
Artmasterpro написал:
Событие програмного изменения ячейки
Т.е. LinkedCell на этапе создания не указывать, а менять ячейку именно программно:
Код
Private Sub ComboBox1_Change()
    Range("A1") = ComboBox1
End Sub
То событие Change листа очень даже отслеживается ))
 
на самом деле, описанный Юрой  способ хорош для отслеживания изменений результата вычислений формулы. Проще чем сохранять предыдущий результат и с ним сравнивать.  
По вопросам из тем форума, личку не читаю.
 
господа,
а вы решаете задачу Artmasterpro или какие-то свои?
потому что во всей этой переписки, среди всех сломанных здесь копий (копьев) есть чьи угодно только нет копий Artmasterpro,и невольно создается впечатление что ему поср...ть на всю эту переписку
не слишком -ли много внимание теме в которой нужно отследить событие ComboBox_Chenge()  но оно почему-то не подходит... (кто-то знает почему?)
или у вас открылись чакры и вам известно об этой задаче больше чем о ней написано?
извините, возможно я ошибаюсь и он напряженно следит за тем, чем же все это закончится (каждый волнуется по-своему)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Игорь, неважно, почему автору не подходит конкретное событие - он просит другой вариант. Что плохого, если мы обсуждаем этот другой вариант? Тебе не нравится это обсуждение -просто  не принимай участие.
 
когда есть время и настроение я и не такое решал, извините.
Не в этом дело. в любой задаче - мне бы понимать суть задачи
есть задача - есть предмет для обсуждения, нет задачи, что решать? если понимать что нужно - возможно ComboBox_Chenge может оказаться именно тем событием, за которое можно вытащить решение, а чем он не подходит кто-то знает?
возможно, потому что у автора в ComboBox_Chenge уже написан некоторый код, а второй ComboBox_Chenge в один модуль не всунуть, а как добавить в существующий ComboBox_Chenge еще что-то он не знает
понятно все это - лишь мои предположения
напишите в любую ячейку =А1, ослеживайте Calculation... со всеми вытекающими
вообще вариантов тысячи, но ComboBox_Chenge - скорее всего оптимальный, если узнать почему именно он не подходит и просто обойти это ограничение
Изменено: Ігор Гончаренко - 28 Апр 2020 22:52:27
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
Ігор Гончаренко написал:
а чем он не подходит кто-то знает?
А зачем знать? Какая разница, почему не подходит? Когда тебя просят "макросы ек предлагать" и просят решение именно формулой - ты же не начинаешь выяснять причину? Вот и здесь так. Я тоже, как и ты,  не знаю, почему не подходит Change в КомбоБоксе - не нравится, не умеет, другие причины...  Вот и предложил альтернативу. Чего ты завёлся?
Цитата
Ігор Гончаренко написал:
а вы решаете задачу  Artmasterpro  или какие-то свои?
Именно задачу автора: отследить Событие програмного изменения ячейки.
 
Юра, я уже два раза извинился, и тоже уже внес свою лепту в решение:
Цитата
Ігор Гончаренко написал:
напишите в любую ячейку =А1, ослеживайте Calculation...
если автору интересно - разовьет эту подсказку до рабочего решения
всем удачи!
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
Страницы: 1
Читают тему (гостей: 1)
Наверх