Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Программирование, связанное с MS Office > Автообновление связей без уведомления!


Автор: Displey 14.4.2006, 10:58
Есть две книги , каждая из них находится на разных компьютерах, которые имеют между собой связь и могут обмениватся данными.
Нужно установить связь на обновление значений. Тоесть Если в Книге1, которая расположена на Комп 1, в ячейку А1 было введено 5, то в Книге 2 , которая расопложена на Комп 2 , в ячейке А1 должен быть этот же результат. Читал где-то , что можно сделать при помощи средств ADO, но близкого знакомтсва с ним нет smile Если кто знает решение проблемы, прошу помочь.

Автор: Displey 3.5.2006, 16:25
Вопрос оказался сложным smile 

Автор: Akina 3.5.2006, 17:25
Решение проблемы - в написании собственного кода. Потому что ты хочешь динамического, на лету, обновления связей, в то время как все стандартные обновляющие процедуры и методы - статические (т.е. выполняемые по явному запросу). Впопрос не сложный, но в реализации геморройный, в основном из-за необходимости обрабатывать целый букет возможных ошибок.

Самое главное - не очень понятна цель подобного действа. А в Экселе - так и вообще непонятна. 

Автор: Displey 4.5.2006, 08:32
Цель обновление данных на основе источника.
 

Автор: Akina 4.5.2006, 08:49
Ну вот тебе вариант:

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

А что ты будешь делать если одна и та же ячейка изменится в ОБОИХ файлах? 

Автор: likhobory 4.5.2006, 09:46
а чем не устраивает обычная ссылка на ячейку другой книги ?? 

Автор: Akina 4.5.2006, 10:31
Цитата(likhobory @  4.5.2006,  10:46 Найти цитируемый пост)
чем не устраивает обычная ссылка на ячейку другой книги 

ему нужно реал-тайм обновление данных. 

Автор: likhobory 4.5.2006, 14:30
Цитата(Akina @  4.5.2006,  11:31 Найти цитируемый пост)
ему нужно реал-тайм обновление данных

все же не вижу проблемы
+ как вариант можем воспользоваться импортом данных(данные-импорт внешних данных-импортировать данные...). После получения данных в свойствах диапазона отметить "Обновлять каждые... мин"
  

Автор: likhobory 5.5.2006, 11:02
в догонку - при создании ссылки необходимо указать полный путь к книге-источнику, если она закрыта, например:
='c:\MyDocs\[bbb.xls]лист1'!A1 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)