Difference between revisions of "RU/kb/00000641"

From Wiki
Jump to navigationJump to search
(Основной текст)
 
 
Line 9: Line 9:
 
|}
 
|}
 
=== DDE ===
 
=== DDE ===
Функция возвращает данные на основе ''DDE'' связи.
+
<section begin=description />Функция возвращает данные на основе ''DDE'' связи.<section end=description />
  
 
==== Синтаксис функции: ====
 
==== Синтаксис функции: ====

Latest revision as of 09:59, 13 March 2012



70px right

DDE

Функция возвращает данные на основе DDE связи.

Синтаксис функции:

=DDE(server; file; item; mode)

где:

  • server — (текстовое) имя сервера; например “soffice” для InfraOffice.pro и OpenOffice.org;
  • file — (текстовое) полное имя или IRL (Internet Resource Locator) документа, содержащего данные; например “c:\office\document\test1.ods” или “file:///documents/test2.ods”;
  • item — (текстовое) имя возвращаемого элемента. Например “Лист1.B3” — ячейка B3 на Лист1 электронной таблицы InfraOffice.pro Calc; “MyRange” — имя диапазона в электронной таблице Calc; “MyItem” — имя раздела или таблицы в документе InfraOffice.pro Writer;
  • mode — необязательный параметр, определяющий, как возвращаются числа. Нечисловой текст возвращается неизменным:
    • 0 или опущен: данные преобразуются к числу если возможно, используя стиль ячейки по умолчанию;
    • 1: данные преобразуются к числу если возможно, в формате английский США (en_US) (например, используя “.” как десятичный разделитель);
    • 2: Данные всегда восстанавливаются как текст (не преобразуются в число).


Функция DDE выполняет запрос по протоколу DDE и возвращает его результат. Обычно это просто локальная операция на машине, но эта спецификация не налагает подобного ограничения.


DDE создаёт связь к элементу (и возвращает содержимое), таким образом любое изменение элемента отражается на результате DDE.


Альтернативный метод для создания DDE связи — скопировать ячейку или диапазон из исходного файла в буфера обмена, а затем используя команду меню Правка → Вставить как, выбрать пункт Связь по DDE. Связь вставляется как функция DDE, как формула массива.


Команда меню Правка → Связи… отображает список DDE связей и позволяет их изменять, обновлять вручную или разрывать.


DDE поддерживает «Динамический обмен данными», который является предшественником OLE, «Связывания и встраивания объектов». Объекты DDE связаны по ссылке с источником; они не встроены в целевой документ.


=DDE(“soffice”;“C:\OpenOffice\test1.ods”;“Лист1.C7”)

Создает связь и возвращает содержимое ячейки C7 на листе Лист1 файла InfraOffice.pro Calc test1.ods.


=DDE(“soffice”;“C:\OpenOffice\test2.odt”;“Таблица1”)

Когда введена как формула массива, создаёт связь и возвращает содержимое таблицы по имени Таблица1 в файле InfraOffice.pro Writer test2.odt, в одном столбце. Каждый абзац в ячейке таблицы появляется в своей собственной ячейке. Содержимое левой верхней ячейки таблицы отображается в первую очередь, за ним следуют по порядку другие ячейки в верхней строке, а затем аналогичным образом по порядку в других строках. Функция INDEX может использоваться для возврата только части таблицы.


=DDE(“soffice”;“C:\OpenOffice\test2.odt”;“Раздел1”)

Когда введена как формула массива, создаёт связь и возвращает содержимое раздела по имени Раздел1 в файле InfraOffice.pro Writer test2.odt в одном столбце, один абзац в ячейке. Когда введена обычно (не как формула массива), она возвращает первый абзац раздела Раздел1.


=INDEX(DDE(“soffice”;“C:\OpenOffice\test2.odt”;“Раздел1”);2)

Когда введена как формула массива, создаёт связь и возвращает содержимое второго абзаца раздела Раздел1 в файле InfraOffice.pro Writer test2.odt.


Documentation caution.png MS Excel не имеет этой функции.


Когда используется массив для возврата данных, размер массива закрепляется при первом вычислении. Если например число строк в таблице Writer или разделе изменяется, размер массива в Calc не изменяется.


Documentation note.png Имеются альтернативные способы связи с внешними данными.






InfraOffice.pro 3.1.x









К началу страницы