Ole объект excel
Microsoft Excel ожидает, пока другое приложение завершит действие OLE
Некоторые пользователи Office сообщают об ошибке «Microsoft ожидает, пока другое приложение завершит действие OLE» при попытке запустить сценарий VBA или при запуске Excel из стартовой панели. Сообщается, что эта проблема возникает во всех последних версиях Windows, включая Windows 7, Windows 8.1 и Windows 10.
Что такое действие OLE?
Действие «Связывание и внедрение объектов» (OLE) — это, по сути, механизм, разработанный для того, чтобы помочь различным приложениям Office (Word, Excel, Powerpoint, Sharepoint) взаимодействовать с другими приложениями.
Что вызывает ошибку «Microsoft Excel ожидает, пока другое приложение завершит действие OLE»?
Мы исследовали эту конкретную проблему, просматривая различные пользовательские отчеты и просматривая официальную документацию Microsoft. Нам даже удалось воспроизвести проблему на одной из наших машин для тестирования.
Если Excel отправляет запрос связи другому приложению (скажем, Word), он делает это с помощью объекта OLE, а затем ожидает ответа от приложения. Если ответ не приходит в установленный по умолчанию временной интервал, Excel выдаст конечному пользователю следующее предупреждение: «Microsoft Excel ожидает, пока другое приложение выполнит действие OLE».
Хотя сообщение об ошибке всегда одно и то же, на самом деле есть несколько довольно распространенных сценариев, которые вызывают эту конкретную ошибку в Microsoft Excel:
- Протокол DDE отключен в Excel. Эта проблема может возникать из-за того, что протокол динамического обмена данными (DDE) отключен в настройках Excel.
- Поврежденная установка Office. Некоторые затронутые пользователи сообщают, что проблема была решена после переустановки или восстановления пакета Office.
- Надстройка Adobe Acrobat PDFMaker конфликтует с Excel. Было несколько отчетов пользователей, которые смогли решить проблему, отключив или удалив плагин PDFMaker.
- Процесс IE (Internet Explorer) мешает работе DDE. Обычно это происходит, когда пользователь пытается сохранить файл в Microsoft Excel. В этом случае решение состоит в том, чтобы закрыть процесс вручную.
Если в настоящее время вы пытаетесь устранить это конкретное сообщение об ошибке, эта статья предоставит вам несколько шагов по устранению неполадок. Ниже у вас есть выбор методов, которые другие пользователи в аналогичной ситуации успешно использовали для решения проблемы.
Для достижения наилучших результатов следуйте приведенным ниже методам, пока не встретите исправление, эффективное для решения проблемы. Давайте начнем
Способ 1. Удаление Adobe Acrobat PDFMaker (если применимо)
Некоторым пользователям удалось устранить сообщение об ошибке, удалив надстройку Adobe Acrobat PDF Maker. Как оказалось, этот плагин может конфликтовать с определенными версиями Microsoft Excel.
Вот список версий Office, совместимых с PDF Maker:
- Office 2010 (Office 14) 32-разрядный и 64-разрядный
- Office 2013 (Office 15) 32-разрядная и 64-разрядная версии
- Office 2016 (Office 16) 32-разрядная и 64-разрядная версии
Если этот сценарий применим, и вы не сильно полагаетесь на PDF Maker, вы, скорее всего, сможете решить эту проблему, отключив или удалив надстройку Adobe Acrobat PDFMaker.
Вот краткое руководство о том, как это сделать:
- Откройте Microsoft Excel и нажмите « Файл» на ленточной панели.
- В меню «Файл» выберите « Параметры» (внизу списка меню).
- В меню параметров Excel выберите « Надстройки» в левом меню. Затем перейдите к правой панели, разверните раскрывающееся меню, связанное с управлением, и выберите Надстройки COM . Затем нажмите кнопку « Перейти…» , чтобы открыть меню надстроек Com .
- В поле Надстройки COM снимите флажок, связанный с надстройкой Acrobat PDFMaker Office COM, или выберите его и нажмите «Удалить», чтобы полностью удалить его.
- Перезагрузите компьютер и заново выполните шаги, которые ранее вызывали ошибку, после завершения следующего запуска.
Если вы по-прежнему сталкиваетесь с ошибкой «Microsoft Excel ожидает, пока другое приложение завершит действие OLE» , перейдите к следующему способу ниже.
Способ 2: разрешение приложений, которые используют DDE в настройках Excel
Как сообщают многие пользователи, проблема может возникнуть, если Microsoft Excel настроен на игнорирование любых приложений, которые пытаются обмениваться данными с Excel, используя протокол динамического обмена данными (DDE) .
Например, допустим, вы дважды щелкнули книгу Excel в проводнике Windows — как только команда зарегистрируется, динамический обмен данными (DDE) будет отправлен в Excel. Этот обмен инструктирует Excel открыть книгу, которую вы только что дважды щелкнули.
Если Excel настроен на игнорирование приложений, использующих протокол динамического обмена данными , обмен не произойдет, и вы увидите сообщение об ошибке «Microsoft Excel ожидает, пока другое приложение завершит действие OLE» .
К счастью, вы можете легко устранить эту проблему, открыв меню параметров Excel и включив протокол DDE. Вот краткое руководство о том, как это сделать:
- Откройте Microsoft Excel и нажмите « Файл» . Не имеет значения, открываете ли вы новую рабочую книгу или новый документ.
- В меню « Файл» выберите « Параметры» на левой панели.
- В меню параметров Excel выберите вкладку « Дополнительно » в левом меню. Затем перейдите на правую панель и прокрутите вниз, пока не дойдете до общего раздела. После этого убедитесь, что флажок, связанный с Игнорировать DDE запросы от других приложений, не отмечен.
- В меню параметров Excel выберите вкладку « Дополнительно » в левом меню. Затем перейдите на правую панель и прокрутите вниз, пока не дойдете до общего раздела. После этого убедитесь, что флажок, связанный с Игнорировать DDE запросы от других приложений, не отмечен.
- Нажмите ОК, чтобы сохранить изменения, затем перезапустите Microsoft Excel. Затем повторите операцию, которая ранее вызывала ошибку «Microsoft ожидает, пока другое приложение завершит действие OLE», и посмотрите, сохраняется ли проблема.
Если вы все еще сталкиваетесь с тем же сообщением об ошибке, перейдите к следующему способу ниже.
Способ 3: уничтожение процесса Internet Explorer (IE)
Ошибка «Microsoft ожидает, пока другое приложение завершит действие OLE» может возникнуть при попытке сохранить файл, поскольку процесс IE может мешать динамическому обмену данными (DDE).
Пользователи в аналогичной ситуации сообщали, что проблема была решена после того, как они вручную завершили процесс IE. Вот краткое руководство о том, как это сделать:
- Нажмите Ctrl + Shift + Esc, чтобы открыть диспетчер задач .
- В диспетчере задач перейдите на вкладку Процессы и посмотрите, есть ли у вас какой-либо процесс, принадлежащий Internet Explorer, который в данный момент активен.
- Если вы видите такой процесс, просто щелкните по нему правой кнопкой мыши и выберите Завершить задачу, чтобы закрыть его
- Вернитесь в Excel и посмотрите, возникает ли еще ошибка «Microsoft ожидает, пока другое приложение завершит действие OLE» , когда вы пытаетесь сохранить файл.
Если вы все еще сталкиваетесь с той же ошибкой, перейдите к следующему способу ниже.
Метод 4: Подавление обмена сообщениями Excel
Если вы видите сообщение об ошибке при попытке запустить сценарий VBA, одним из обходных путей может быть подавление обмена сообщениями приложения с помощью крошечного фрагмента кода.
Но имейте в виду, что это не решит саму проблему — это всего лишь обходной путь, который предотвращает появление сообщения об ошибке. Вот краткое руководство по вставке кода VBA в Excel Workbook, которое подавит обмен сообщениями приложений с Excel:
- Откройте Excel и нажмите Alt + F11, чтобы открыть редактор Visual Basic (VBE) .
- На панели «Project» (слева) щелкните правой кнопкой мыши ЭтаКнига и выберите « Insert»> «Module» .
- Во вновь созданном модуле вставьте следующий код:
- Нажмите Ctrl + S и нажмите Нет, когда увидите предупреждение «Следующие функции не могут быть сохранены в книге без макросов» .
- Затем выберите подходящее место для измененной рабочей книги, задайте правильное имя и убедитесь, что в качестве типа « Сохранить как» выбран Excel Macro-Enabled Workbook. Когда все будет в порядке, нажмите « Сохранить», чтобы создать книгу Excel с поддержкой макросов .
- Нажмите Alt + Q, чтобы закрыть редактор и вернуться к своей книге. Вернувшись в редактор, нажмите Alt + F8 , выберите только что созданный макрос и нажмите «Выполнить».
После завершения этой процедуры вы больше не должны видеть ошибку «Microsoft Excel ждет другого приложения для завершения действия OLE» с этой рабочей книгой (даже если она все еще может возникать в фоновом режиме).
Способ 5: отключить режим совместимости (если применимо)
Некоторым пользователям удалось решить проблему, обнаружив, что исполняемый файл Excel работает в режиме совместимости . Это может произойти из-за ручного вмешательства пользователя или стороннего приложения.
Если вы подозреваете, что Excel работает в режиме совместимости, отключите его и посмотрите, перестает ли появляться сообщение «Microsoft Excel ожидает, пока другое приложение завершит действие OLE». Как правило, сообщение об ошибке возникает, если исполняемый файл Excel настроен для работы в режиме совместимости с Windows Vista и более ранними версиями.
Вот краткое руководство по отключению режима совместимости:
- Щелкните правой кнопкой мыши исполняемый файл Excel (или ярлык) и выберите « Свойства» .
- В окне « Свойства» перейдите на вкладку « Совместимость » и снимите флажок, связанный с «Запустить эту программу в режиме совместимости» .
Ole объект excel
Помогите, знающие люди.
Кто работал с OLE-интерфейсом в Buildere?
Как вставить объект какой-нибудь в Excel на Buildere.
Макрос в VBA выглядет так:
ActiveSheet.OLEObjects.Add(Filename:=»C:12405.cdw», Link:=False, DisplayAsIcon:=False).Select
Как тоже самое сделать на Buildere, с использованием таких функций как OlePropertyGet(), OleFunction(), .
Заранее спасибо
Очень, очень нужно.
Добавление от 13.11.2002 07:35:
Не пойму, в чем дело. На строчке obj.Exec(. ) вываливается exception.
exception class EOleSysError with message ‘Недостаточно памяти для завершения операции’
На винте места достаточно, оперативки правда 128, но помоему ему на это пофигу.
Странно.
Может нужно под операцию выделить как-то память?*.
Че-то совсем запутался.
У меня w98se, RAM 0.5Г, BCB5, Excel97.
Когда выполнял предложенный код было запущено BCB, 2*IE, TheBat, Excel+VB+HelpVB, Far, DrWeb. Плюс запустился Exe’шник и из него запустился еще Excel.
Правда я вставлял BMP’шку, а Вы CDW’шку может быть проблема в этом?
Могу показать вариант не через OleCreate. а через _ApplicationDisp.
Интересное кино. Я пока тоже пытаюсь для начала вставить BMP-шку, потом мне необходимо вставлять любой объект.
Может все дело в системе и Buildere: у меня Win2000SP2, BCB6, Excel2000 .
Или в Excel 2000.
. а что такое _ApplicationDisp?
Можно ли через него записывать в ячейку Excel, читать, вставлять объекты, ну и все остальное?
Если не трудно покажите как это делается (вставка объекта). Возможно с ним у меня не будет таких проблем.
Спасибо.
. а что такое _ApplicationDisp?
Help -> C++ Builder Help -> Содержание -> Developing COM-based Applications -> Creating COM Clients -> Example: Printing a document with Microsoft Word -> Using a dispatch interface object.
потом мне необходимо вставлять любой объект.
В качестве одного из параметров метода Add идет цитата: ClassType Optional Variant. (you must specify either ClassType or FileName). A string that contains the programmatic identifier for the object to be created.
цитата (Prog2 Michael): Могу показать вариант не через OleCreate. а через _ApplicationDisp. Пример для Excel пока собрать не получается, оказалось сложнее чем для Word. В Word можно cделать так код:
Придется копать видно самому. а времени нет.
Давить не надо. Afaik помощь — дело добровольное.
Спасибо. Выяснилась одна интересная деталь. Вставка объекта в Excel программно через (OlePropertyGet) в связке BCB6+. — не работает!
Похоже Borland че-то намудрил.
BCB5+XP+2000Office — OK.
Обнаружил, что технология взаимодествия с Excel через OLE, не очень хороша, в плане быстродействия.
Использование раннего связывания, относительно позднего намного ускоряет работу приложения, или же ускорение только теоретически.
Ole объекты Автокад
Технология ole позволяет импортировать объекты из других приложений с сохранением связей. Если вставить изображение из такого приложения, как Word или график из Excel, то оно будет сохраняться в файле как внедренный объект. Т.е. при передаче проекта вам не нужно его архивировать с чертежом, как это необходимо делать при использовании внешних ссылок в Автокаде.
На вкладке «Вставка» расположена команда «Ole-объект» AutoCAD.
После активации команды появляется диалоговое окно “Вставка объекта».
Создаем новый файл. В этом случае следует указать приложение (Photoshop, Microsoft Excel, Word, Power Point и т.д.), в котором вы будете работать. Далее следует поместить ваш объект в Автокад или же сразу работать на основе существующего файла. На практике намного чаще используется именно второй вариант. Рассмотрим его более подробно.
В диалоговом окне «Вставка объекта» установите галочку «Создать из файла». Нажмите кнопку «Обзор», чтобы выбрать подходящий файл. После проделанных действий прописывается путь к вашему документу.
Существует два варианта вставки:
1) Независимая – после вставки объекта он «стационарно» хранится в Автокаде. И при изменении исходного файла в вашем чертеже никакие изменения не происходят.
2) Связывание файлов – в этом случае их местоположение на компьютере должно оставаться неизменным. При изменении пути связь будет теряться. Поэтому эти файлы оптимальнее всего хранить в одной папке.
Чтобы связать файлы AutoCAD, установите галочку «Связь» в диалоговом окне «Вставка объектов» (рис. 3).
Рис. 3 – Работа с ole-объектом Автокад на основе существующего файла.
ПРИМЕЧАНИЕ: Если в связанном файле произошли изменения, то в Автокаде их можно увидеть только после открытия чертежа заново.
После нажатия «ОК» ваш оле-объект вставляется в рабочее пространство AutoCAD. Теперь с ним можно работать, как с обычными примитивами Автокада. Например, применять команды редактирования.
Рис. 4 – Ole-объект Автокад в виде картинки из Word.
Если дважды ЛКМ щелкнуть по такому ole-объекту, то откроется приложение, в котором изначально он был создан или хранился. В данном примере вставлялась обычная картинка из Word.
Рис. 5 – Наличие обратной связи позволяет открыть исходное приложение (в данном случае Word).
Внедрение Ole в Автокад через буфер обмена
Вставка ole-объектов в Автокад, таких как картинки, графики, диаграммы и т.д., быстро происходит через буфер обмена.
- Откройте Excel, скопируйте график в буфер обмена (Ctrl+C).
- Далее перейдите в Автокад и в рабочем пространстве нажмите Ctrl+V.
- После проделанных действий ваш объект будет внедрен в файл AutoCAD. В отличие от внешней ссылки, он будет храниться непосредственно в самом файле (читать статью про внедрение внешних ссылок в Автокад).
Ole AutoCAD: секреты и хитрости
Фишки работы с ole-объектами в Автокаде более подробно рассмотрены в продвинутом курсе «Советы и хитрости работы в AutoCAD».
В этом курсе на практических примерах рассмотрена работа с Ole-объектами Автокад. В видеоформате рассказано про:
— настройки качества вывода ole-объектов на печать;
— как убрать рамку, которая по умолчанию обрамляет эти объекты;
— системные переменные при работе с оле Автокад;
— обратный процесс вставки ole-объектов из Автокада в сторонние приложения.
Теперь вы можете смело внедрять логотип своей фирмы в чертежи или подложки к проектам.
А всем начинающим пользователям программы рекомендую бесплатный пошаговый курс «Автокад: видеоуроки для начинающих».
Полная автоматизация. Редактируем объекты Excel, содержащиеся в документах Word и наоборот.
В одной из статей, посвященных работе с Excel в Delphi читатель с ником Kanti задал весьма не тривиальную задачку — как добраться до диаграммы Excel, внедренной в документ Word и работать с ней. За что Kanti большое человеческое спасибо — приятно, когда читатели интересуются жизнью блога и предлагают новые темы и идеи.
На первый взгляд задача довольно не простая. Однако решение для неё есть. Я пошел немного дальше в решении проблемы и сегодня расскажу вам:
- как работать с объектом Excel, внедренном в документ Word
- как работать с документом Word, внедренным в Excel.
План статьи:
Прежде, чем начать изложение основного материала, следует упомянуть некоторые моменты работы с Word, т.к. в блоге я их не касался, но эти основы пригодятся для освоения основного материала статьи.
1. Азы работы с MS Word в Delphi
Запуск MS Word в принципе ни чем не отличается от запуска MS Excel за одним небольшим исключением — меняется параметр функции CreateOLEObject:
Но, чтобы не повторяться дважды я расскажу ещё один дополнительный момент, который Вам пригодиться для дальнейшей работы: как подключиться к уже выполняющемуся приложению MS Office, чтобы не создавать лишних копий процессов.
Для того, чтобы подключиться к уже запущенному приложению достаточно использовать функцию GetActiveOleObject, единственным параметром которой является имя класса. Например, чтобы подключиться к запущенному приложению MS Word необходмо выполнить:
Соответственно, чтобы не гадать запущена или не запущена та или иная программа пакета MS Office достаточно воспользоваться связкой двух функций:
Для того, чтобы открыть уже имеющийся документ Word необходимо воспользоваться методом Open объекта Documents, например так:
После того как документ открыт, Вы можете его редактировать, изменять текст, параметры страницы и т.д., но сегодня нам это не важно. Главное сегодня — научиться работать с объектами. И с этого момента начинается решение первой задачи.
2. Как работать с объектом Excel, внедренном в документ Word
Каждый документ Word имеет коллекцию Shapes, которая позволяет добавлять в документ объекты, созданные и отображаемые с помощью программ-серверов OLE (OLE-серверов). OLE-объекты в документах Word могут отображаться также, как они отображаются в приложениях, предназначенных для их создания и редактирования. Все наверно пользовались редактором формул Math Type? Вот вам простой OLE-сервер. Добавляете OLE-объект формулы в документ — открывается окно Math Type где вы вводите то, что хотите увидеть и потом формула отображается в документе Word.
Другое дело, когда Вы пробуете вставить в документ Word, например файл mp3. В этом случае объект будет отображен в документе в виде ярлыка, но, тем не менее будет внесен в коллекцию Shapes и до него можно будет добраться из Delphi.
Теперь попробуем посмотреть как выглядит добавление OLE-объектов. В простейшем случае Вы открываете Word, создаете документ и выбираете «Правка — Вставить — Объект» и перед Вами открывается окно с перечнем всех OLE-объектов, которые Вы можете использовать в документе. Выбираете объект, вставляете в документ — работаете. Обратите внимание на рисунок — в окне на рисунке как раз отображены всевозможные объекты нашего с Вами исследования.
Для того, чтобы вставить OLE-объект в документ Word из Delphi необходимо воспользоваться методом AddOleObject коллекции Shapes, который имеет следующий вид:
Shapes.AddOleObject(ClassType, FileName, LinkToFile, DisplayAsIcon, IconFileName, IconIndex, IconLabel, Range)
ClassType — имя, используемое для включения указанного объекта OLE. Например, чтобы вставить в документ Word диаграмму Excel следует использовать
для добавления листа Excel, соответственно:
и так далее. В принципе ничего сложного нет — вставить можно, что угодно, хоть exe-файл 🙂
FileName — имя файла, из которого должен быть создан объект. Если этот аргумент опущен, то используется текущая папка. Вы должны указать либо ClassType либо FileName, но никак не одновременно оба параметра.
LinkToFile — True для того, чтобы связать OLE-объект с файлом, из которого он был создан. False, чтобы сделать объект OLE-объект независимым от копии файла, т.е. включить объект в документ Word. Если Вы определили значение для ClassType, аргумент LinkToFile должны быть ложными. Значение по умолчанию False.
DisplayAsIcon — True для отображения объекта OLE в виде значка. Значение по умолчанию False.
IconFileName — Файл, который содержит значок для отображения объекта OLE.
IconIndex -индекс иконки отображения из IconFileName. Значение по умолчанию — ноль.
IconLabel — подпись к иконке объекта.
Range — диапазон, где объект OLE будет размещен в тексте. Объект OLE заменяет выбранный диапазон. Если этот аргумент опущен, объект вставляется автоматически (в текущую позицию курсора в документе).
Давайте теперь продемонстрируем использование этого метода на практике и, заодно, приготовим плацдарм для дальнейшей работы. Рассмотрим как можно вставить чистый лист Excel в документ Word. Причем вставим лист в нужные нам координаты и зададим ему (листу) длину и ширину:
Как видите, вместо того, чтобы указать объект Range мы просто расписали его параметры Left, Top, Width и Height. После выполнения этих операций в документе doc аккурат в верху страницы вставиться лист Excel.
Теперь, когда лист вставлен, можно приступать к дальнейшему изучению «глубин» OLE-серверов Microsoft.
Создадим новую переменную, в которой будем хранить ссылку на OLE-объект.
и сразу получим ссылку на наш лист Excel в Word’е:
Так будет проще разбираться и избавит нас от лишней писанины.
Представим себе, что мы ничего абсолютно не знаем про то, что лежит в MyOLE. Знаем только то, что это элемент из коллекции Shapes и все. Как определить, что мы получили ссылку именно на объект Excel, а не на автофигуру или, ещё хуже, не на файл mp3?
Для того, чтобы получить всю необходимую информацию об OLE-объекте достаточно обратиться к объекту MS Word под названием OLEFormat.
OLEFormat имеет следующие свойства:
Теперь, используя эти свойства, попробуем получить всю необходимую нам информацию об OLE-объекте.
Вызовем последовательно свойства ClassType и ProgID:
В моем случае, результатом выполнения операций были две одинаковых строки «Excel.Sheet.12» Так как у меня установлен Office 2007 то версия 12, что и отразилось в сообщениях. У Вас это могут быть 10, 11 или как у меня 12 версии. С помощью номера версии можно будет определять — возможно ли в принципе изменять такие объекты на машине пользователя или нет.
Идем дальше. Итак, мы определили, что объект представляет собой лист Excel. Как получить доступ к Excel? И причем сделать это так, чтобы можно было наш OLE-объект изменить?
Обратимся к свойству Object. Согласно описанию, свойство должно вернуть нам ссылку на объект верхнего уровня. Следовательно, применительно к нашей ситуации — это будет ссылка на объект Excel. Чтобы убедиться в сказанном, сделаем так:
то есть получим имя приложения в котором был создан объект. В результате получим сообщение в виде строки «Microsoft Excel«.
Ну, а теперь развязка вопроса — используя ссылку на Excel попробуем написать что-нибудь на листе, например, избитую фразу «Hello World!»:
Можете проверить — в ячейку А1 запишется строка. Здесь следует обратить внимание на то, что при записи в Excel мы не использовали свойства ActiveWorkBook, которое обычно предшествует свойству ActiveSheet. Все дело в том, что среди объектов OLE Office нет такого OLE-объекта — вставляется только лист либо диаграмма. По сути диаграмма — это два листа Sheet где на одном находится сам график, а на втором — данные к нему.
Вот таким простым и достаточно понятным способом можно добавлять, изменять и удалять OLE-объекты. Кстати, на досуге можете потренироваться вставлять, активировать, редактировать сразу несколько различных OLE-объектов — принцип работы тот же. Получаете Object и используете его функции.
3. Как работать с документом Word, внедренным в Excel.
Надо сказать, что разработчики в Microsoft весьма неплохо потрудились, чтобы запутать бедных разработчиков :). В начале все просто — как в Word. Есть Shapes у которого в свою очередь есть метод AddOLEObject, с практически теме же параметрами.
Далее, по логике вещей, у Shapes должно быть свойство-объект OLEFormat. Проверяем — действительно есть, но…свойства другие, точнее одно из свойств другое, а большинства вообще нет. Но, мы люди не гордые — будем управляться с тем, что есть:
Вставка объекта в электронную таблицу Excel
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
Для включения содержимого из других программ, таких как Word или Excel, можно использовать связывание и внедрение объектов (OLE).
Технология OLE поддерживается многими различными программами, и технология OLE используется для создания содержимого, которое создается в одной программе, доступной в другой программе. Например, вы можете вставить документ Office Word в книгу Office Excel. Чтобы узнать, какие типы контента можно вставить, в группе текст на вкладке Вставка нажмите кнопку объект . В поле тип объекта отображаются только программы, установленные на вашем компьютере и поддерживающие объекты OLE.
При копировании данных между Excel или любой программой, поддерживающей технологию OLE, например Word, вы можете скопировать эти данные как связанный объект или внедренный объект. Основные различия между связанными и внедренными объектами находятся в том месте, где хранятся данные, а также о том, как объект будет обновлен после того, как вы поместите его в конечный файл. Внедренные объекты хранятся в книге, в которой они вставлены, и не обновляются. Связанные объекты сохраняются как отдельные файлы, и их можно обновить.
Связанные и внедренные объекты в документе
1. внедренный объект не имеет соединения с исходным файлом.
2. связанный объект связан с исходным файлом.
3. исходный файл обновляет связанный объект.
Когда следует использовать связанные объекты
Если вы хотите, чтобы информация в конечный файл обновлялась при изменении данных в исходный файл, используйте связанные объекты.
При использовании связанного объекта исходные данные сохраняются в исходном файле. В конечном файле выводится представление связанных данных, в котором хранятся только исходные данные (и размер объекта, если объект является диаграммой Excel). Исходный файл должен быть доступен на вашем компьютере или в сети для поддержания связи с исходными данными.
Связанные данные могут быть обновлены автоматически при изменении исходных данных в исходном файле. Например, если выбрать абзац в документе Word, а затем вставить его как связанный объект в книгу Excel, то при изменении данных в документе Word можно обновить данные в Excel.
Использование внедренных объектов
Если вы не хотите обновлять скопированные данные при изменении в исходном файле, используйте внедренный объект. Версия исходного кода полностью внедрена в книгу. Если вы копируете данные как внедренный объект, конечный файл требует больше места на диске, чем при связывании данных.
Когда пользователь открывает файл на другом компьютере, он может просматривать внедренный объект без доступа к исходным данным. Так как внедренный объект не содержит связей с исходным файлом, объект не обновляется при изменении исходных данных. Чтобы изменить внедренный объект, дважды щелкните объект, чтобы открыть его и изменить его в исходной программе. Исходная программа (или другая программа, поддерживающая редактирование объекта) должна быть установлена на вашем компьютере.
Изменение способа отображения объекта OLE
Вы можете отобразить связанный объект или внедренный объект в книге так, как она отображается в программа-источник или в виде значка. Если книга будет просматриваться в Интернете и вы не планируете печатать книгу, вы можете отобразить объект в виде значка. Это уменьшает объем отображаемого пространства, занимаемого объектом. Для просмотра, в котором нужно отобразить сведения, дважды щелкните значок.