|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.10.2015, 05:43 | #1 |
Регистрация: 20.08.2009
Сообщений: 3
|
Создание истории обновления ячеек до полного заполнения листа
Исходные данные:
- внешняя программа направляет в определенную область листа (A1:C42) Excel цифровые данные; - значения обновляются(изменяются каждую секунду); Задача: 1) при каждом изменении любой ячейки из области скопировать всю область (A1:C42) через одну строку (вниз (A44:C86)) и так до конца листа (главное сохранить всю историю изменений); 2) после того, как упираемся (доходим до определенной (либо последней) строки листа, т.е. не хватает строк для успешного копирования - переходим в через столбец вправо (в столбцы E:G) и так до конца столбцов. |
24.10.2015, 09:00 | #2 |
Заблокирован
Регистрация: 15.02.2010
Сообщений: 148
|
Код:
|
24.10.2015, 09:41 | #3 |
Программист VBA
СуперМодератор
Регистрация: 13.07.2008
Сообщений: 6,858
|
AleksandrH, в данном случае, данные на лист попадают по DDE
Worksheet_Change здесь не подойдёт, - он не перехватит это событие Нужна любая формула на листе, ссылающаяся на диапазон A1:C42, и обработка события Worksheet_Calculate |
24.10.2015, 10:13 | #4 |
Заблокирован
Регистрация: 15.02.2010
Сообщений: 148
|
А может быть что Worksheet_Change не срабатывает на изменения которые вручную вносятся? Например, когда писал етот код, встретился с тем, что делаю изменения вручную в диапазоне А1:С42, но процедура Worksheet_Change не запускалась почему-то.
|
24.10.2015, 10:46 | #5 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
да бывает,
когда при отладке Вы остановили выполнение Вашего кода где-то после строки Application.EnableEvents = False и до строки Application.EnableEvents = True теперь в системе запрещено генерирование событий и Worksheet_Change сработает, когда выполните любую процедуру с Application.EnableEvents = True или выгрузить / загрузить Ексель, он не злопамятный - не запоминает, что Вы отключили события в прошлом сеансе.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ссылка ячеек одного листа на ячейки другого листа | n0str0m0 | Microsoft Office Excel | 10 | 31.12.2011 12:11 |
Сохранение истории изменения значений ячеек в таблице Excel | Asblue | Microsoft Office Excel | 2 | 26.10.2011 10:27 |
[Орешек] Обновления истории найденных на ПК файлов... 2 строки 2 одинаковых имени файла но разные пути... | Человек_Борща | Общие вопросы Delphi | 2 | 03.07.2011 14:31 |
грид без полного обновления | ANsy | Компоненты Delphi | 3 | 15.10.2010 09:57 |
Выбор полного прерывающегося диапазона ячеек | SilverSmallFish | Microsoft Office Excel | 6 | 11.03.2010 08:57 |