Ссылки на ячейки в других книгах Сalk ?

Автор Linkor, 22 марта 2012, 15:52

0 Пользователи и 1 гость просматривают эту тему.

Linkor

 
Необходимо получать данные из ячеек Файла "А" в ячейки файла "Б" в режиме реального времени (открыты оба файла).
 
Нашел два варианта:
Прямая ссылка на ячейку:
='file:///C:/Prob/ФайлА.ods'#$'лист1'.A31

И через:
Вставка - Ссылки на внешние данные - Диапазоны (перед этим в файле А создан диапазон с именем)

Данные передаются, НО при изменении данных в "А" чтобы эти изменения отобразились в "Б" - необходимо сохранить файл "А", а файл "Б" перезагрузить.
 Вопрос: Есть возможность обойтись без перезагрузок?

Версия ООо 3.3


sorath

#1
Насколько помню, при вставке ссылки на внешние данные была галочка "Обновлять кажные" и после её установки можно задать время в секундах.
Либо, если данные уже вставлены можно их обновить через меню "Правка" - "Связи", выбрать нужный диапазон ячеек с именем из спика нажать "Обновить" или там же после выбора нужного диапазона ячеек с именем нажать "Изменить" и задать частоту обновления.

Правда тут же, похоже, можно увидеть баг для OpenOffice-3.3 и LibreOffice- 3.5.1.2: даже если для поля выбрано обновлять через X секунд, всё равно будет отображаться, что обновление установлено вручную, хотя автоматическое обновление будет срабатывать.

neft

Файл В читает данные из того файла А, который сохранен на диске (а не данные с экрана).
Таким образом, нужно сохранить файл А на диске для того, чтобы файл В прочел из него новые данные.
(сохранять можно автоматически, например, при каждом изменении данных на листе А, или по таймеру, и т.д.  и т.п.)

Linkor

 ТО sorath.  Спасибо! Правка  - Связи-обновить. Удалось избежать 1 лишней процедуры (перезагрузка файла Б), но все равно не то )))

sorath

Да почему не то то ?  ??? там же можно интервал обновления задать в "Правка" - "Связи"
Цитироватьтам же после выбора нужного диапазона ячеек с именем нажать "Изменить" и задать частоту обновления
в секундах

sorath

В этой теме описываются попытки создать макрос, но, похоже, для данной фукции это пока невозможно сделать, так что пока доступно 3 варианта, первые 2 из которых вручную:

1. Сохранить текущее состояние файла, затем меню "Файл" - "Перезагрузить".
2. меню "Правка" - "Связи", выбор нужного поля и "Обновить".
3. Установка атоматического обновления через определённое время в момент добавления "Ссылки на внешнии данные" (в меню "Вставка"),
или чуть позже для уже вставленных "ссылок" через меню "Правка" - "Ссылки", выбор нужной ссылки и нажатие кнопки "Изменить", где можно будет задать интервал автоматического обновления

neft

Цитата: sorath от 22 марта 2012, 19:54В этой теме описываются попытки создать макрос, но, похоже, для данной фукции это пока невозможно сделать
Легко!

sorath

Там они пришли к выводу, что в api для этой функции (выполняющей роль "Права"-"Связи"-"Обновить" для произвольного числа ссылок в списке) пока описания нет, а попытки написать макрос у них были.
Если можете предложить готовый макрос для этой цели, было бы неплохо :)

Единственным работающим макросом в той тебе по ссылке был тот, что описывал вызов меню "Файл" - "Перезагрузить"

Linkor

Цитата: sorath от 22 марта 2012, 19:543. Установка атоматического обновления через определённое время в момент добавления "Ссылки на внешнии данные" (в меню "Вставка"),или чуть позже для уже вставленных "ссылок" через меню "Правка" - "Ссылки", выбор нужной ссылки и нажатие кнопки "Изменить", где можно будет задать интервал автоматического обновления
Пробовал и так, но курсор каждые 5 сек мигает, пытается обновится - безрезультатно. автоматически не происходит. Баг?

sorath

У меня обновляет автоматически после сохранения изменений в файле-источнике.
Но поле при этом не должно редактироваться, - попробуйте выйти из режима редактирования обновляемой ячейки.