Всем, День добрый! Не получается состыковать две вещи: 1.В таблицу, в column(A1) идет непрерывный импорт данных (в ячейки А1,А2,А3 ....и т.д.), формат "Общий". Соединение с источником по DDE. 2.Написанный макрос работет только в ручном режиме. Подскажите: где, что не так?[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim i, celcnt, r As Integer celcnt = Target.Cells.Count For i = 1 To celcnt r = Target.Cells Range("H1").Value = r Next i End Sub
[/vba]
Всем, День добрый! Не получается состыковать две вещи: 1.В таблицу, в column(A1) идет непрерывный импорт данных (в ячейки А1,А2,А3 ....и т.д.), формат "Общий". Соединение с источником по DDE. 2.Написанный макрос работет только в ручном режиме. Подскажите: где, что не так?[vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim i, celcnt, r As Integer celcnt = Target.Cells.Count For i = 1 To celcnt r = Target.Cells Range("H1").Value = r Next i End Sub
Worksheet_Change() "недетектит" такие изменения - используйте событие пересчёта по этим ячейкам, или события комбобокса, или setlinkondata (в чём разобраться потруднее).
Worksheet_Change() "недетектит" такие изменения - используйте событие пересчёта по этим ячейкам, или события комбобокса, или setlinkondata (в чём разобраться потруднее).Hugo
Когда пересчитывается формула на листе - срабатывает Private Sub Worksheet_Calculate() Вот там и можно поставить обработчик. Если на лист поставить невидимый комбобокс, завязанный на изменяющуюся ячейку - то можно использовать его события. А с setlinkondata я не разбирался - мне не нужно. Тут http://www.planetaexcel.ru/forum....D=10022 есть пример от ZVI. И не только.
Когда пересчитывается формула на листе - срабатывает Private Sub Worksheet_Calculate() Вот там и можно поставить обработчик. Если на лист поставить невидимый комбобокс, завязанный на изменяющуюся ячейку - то можно использовать его события. А с setlinkondata я не разбирался - мне не нужно. Тут http://www.planetaexcel.ru/forum....D=10022 есть пример от ZVI. И не только.Hugo