|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
27.01.2014, 19:39 | #1 |
Регистрация: 27.01.2014
Сообщений: 5
|
событие на листе
Уважаемые местные жители.
Помогите советом. Поделитесь опытом На листе Open происходят изменение ха счет импорта через DDE добавляются новые строки. Как сделать, чтобы запускался , например, макрос 1, при изменении данных на листе способы типа Private Sub Worksheet_Change(ByVal Target As Range) заставить работать не смог |
27.01.2014, 19:52 | #2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Private Sub Worksheet_Change
это пользователь с клавиатуры что-то внес или мышью закопипастил Private Sub Worksheet_Calculate - сработает на изменение данных
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
27.01.2014, 20:38 | #3 |
Регистрация: 27.01.2014
Сообщений: 5
|
непонятно
вот вариант
взял на этом же или соседнем форуме если вручную меняю значение 1 из 2 упомянутых ячеек, то выскакивает MBox/.. но фактически значения этих 2 ячеек меняются через dde изменение Change на Calculate в этом примере не дало результатов Private Sub Worksheet_change(ByVal Target As Range) Dim KeyCells As Range If Not Application.Intersect(KeyCells, Range(Target.Address)) _ Is Nothing Then MsgBox "ячейка" & Target.Address & "была изменена" End If End Sub |
27.01.2014, 20:47 | #4 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Вам же уже сказали - Worksheet_change не сработает!
Можно использовать событие пересчёта, если завязать на эти ячейки формулы (ну или может какая летучая сработает), или можно завязать на ячейку текстбокс и использовать его события. Либо изучите SetLinkOnData - но это кажется сложнее реализовать. У ZVI примеры на форумах есть.
webmoney: E265281470651 Z422237915069 R418926282008
|
27.01.2014, 20:57 | #5 |
Регистрация: 27.01.2014
Сообщений: 5
|
я говорю про то что Calc// не работает
|
27.01.2014, 22:13 | #6 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Причём тут Calc? Тут Excel
Если Вы про пересчёт - так хоть "купите билет" (С) Т.е. пропишите формулы.
webmoney: E265281470651 Z422237915069 R418926282008
|
27.01.2014, 23:18 | #7 |
Регистрация: 27.01.2014
Сообщений: 5
|
какой высокомерный тон!!
ну ладно, вытерплю какое то время. Private Sub Worksheet_Calculate не работает. возможно вопрос в формулах. но тогда что это за формулы. я взял данные, что пришли извне, скопировал методом =лист!ячейка. или какието особенные формулы нужнЫ |
27.01.2014, 23:33 | #8 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Чего высокомерный? Ну ладно, я обычно не нервничаю
Формулу забейте например сумму этих двух ячеек, или сумму длин, или среднее, или количество занятых в диапазоне - не важно, лишь бы они пересчитались.
webmoney: E265281470651 Z422237915069 R418926282008
|
28.01.2014, 07:19 | #9 | |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Цитата:
Чем шире угол зрения, тем он тупее.
|
|
28.01.2014, 10:15 | #10 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Я подозреваю, но не уверен
А проверить негде - не работаю с DDE.
webmoney: E265281470651 Z422237915069 R418926282008
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
работа на одном листе с данными из LISTBOX, данные на другом листе | konstantin1990 | Microsoft Office Excel | 3 | 22.07.2013 15:15 |
У динамически созданной формы есть событие OnClick, но само событие не происходит | Hunter_bog | Компоненты Delphi | 25 | 23.01.2012 23:50 |
Поиск в листе | sasha_prof | Microsoft Office Excel | 6 | 24.03.2010 19:20 |
Событие Worksheet_Change не "ловится" на неактивном листе... | Олег* | Microsoft Office Excel | 4 | 08.01.2010 00:43 |
ячейка на одном листе, в которую необходимо подставлять данные из столбца, находящегося на другом листе | Ирина Водолагина | Microsoft Office Excel | 4 | 04.03.2009 23:38 |