Как связать word и данные excel Excelka.ru - все про Ексель

Как связать word и данные excel

Статьи из блога

Этот метод можно рекомендовать, когда возникает необходимость переноса данных из таблиц Еxcel для вставки в текстовый документ.

Ранее описанный способ вставки таблицы как графического объекта имеет определенные ограничения, такие, как: невозможность изменения данных, искажения при масштабировании, нечитаемость мелкого шрифта и т.д.

Второй предложенный способ — вставлять листы Excel непосредственно в документ, — приводит к неоправданному «раздуванию» файла, кроме того, внедренные объекты иногда ведут себя непредсказуемо.

Однако, используя технологию Automation, объекты можно не только внедрять, но и связывать.

Сейчас мы свяжем между собой таблицы Еxcel и Word, причем так, чтобы изменения в исходной таблице приводили к изменениям в таблице документа. Итак, у нас есть исходная таблица с расчетами:

Создаем в Word точно такую же, но пустую таблицу:

Заголовки не набираем, а специально оставляем пустые строки.

После проделанных операций, на экране должно быть открыты оба окна: окно MS Word с заготовкой и окно MS Excel с расчетной таблицей. Можем приступать к связыванию. Суть его состоит в том, чтобы последовательно, одна за другой, связать ячейки таблицы с необходимыми позициями в текстовом документе.

Перейдите на лист Еxcel и сделайте текущей ячейку, которую необходимо связать с документом (начнем с В1).

Выполняем копирование ячейки (меню Правка-Копировать либо сочетание клавиш Ctrl+C).

Переходим в окно с документом Word и помещаем курсор в позицию для вставки. В данном случае это будет заголовок, расположенный через одну строку над таблицей.

В меню Word выбираем Правка-Специальная вставка. В результате откроется диалоговое окно Специальная вставка, где в области Источник (в левом верхнем углу) указаны координаты выделенной ячейки:

Устанавливаем переключатель в положение Связать.

В списке Как выбираем Неформатированный текст.

Таким образом мы установили связь между текстовой позицией в документе и ячейкой в рабочем листе. Необходимо сразу отметить, что с объединенными ячейками связывание работает не совсем корректно. Аналогично необходимо связать оставшиеся ячейки. Окончательно документ должен выглядеть так:

Теперь мы имеем возможность форматировать таблицу, как нам удобно, при этом изменение данных будет происходить автоматически. Также можно отметить, что таблицу в Word можно использовать как сводную, занося в нее значения из разных листов и даже книг Еxcel.

Режим обновления также можно настраивать. Для этого необходимо:

Выбрать любое вставленное значение в Word и нажать правую кнопку мыши:

В контекстном меню выбрать Связанный объект Лист-Связи.

В открывшемся окне можно выбирать Способ обновления связи:


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

Данный способ при разовом использовании подходит мало, так как он достаточно трудоемкий на начальном этапе. Однако при частых вычислениях (курсовые, дипломные работы, финансовые отчеты и т.д.) он окупается. Также при изменении структуры таблицы в Excel происходит нарушение связей, что влечет за собой разрушение целостности таблицы в документе. Поэтому связывание лучше выполнять после окончательного формирования расчетных таблиц.

Еще записи по вопросам использования Microsoft Word:

Комментариев: 36

Очень полезная статья! Сам бы ни за что не додумался, что можно связывать отдельные ячейки.

Эта возможность существовала еще в 97 Офисе. Однако мощность компьютеров на тот момент не позволяла ее использовать в полной мере. Приходилось записку печатать кусками — текст из Wоrd, таблицы из Excel.

На данный момент это уже не проблема

Виталий, поступил вопрос: «Можно ли таким способом связывать не в

таблицы одинаковой структуры , А, к примеру, там, где это необходимо??

А то я попытался и мне выдается ошибка «Ошибка связи». Заранее благодарен. «?

Таблицы были показаны лишь как характерный пример. А связывать можно ЛЮБЫЕ ячейки Excel с ЛЮБОЙ позицией в тексте. При этом образуется специальное поле в Word, по аналогии с операцией ВСТАВКА->ПОЛЕ.

Сложно говорить заочно. Пришлите файлы.

Насчет одинаковой структуры. Имеется в виду, что если уже ПОСЛЕ связки «отрихтовать» исходную таблицу в Excel (удалить столбцы/ячейки, переместить и т.д.), то «поплывут» связи в таблице Word.

виталий, статья конечно интересная и полезная, а я ищу ответ вот на какой вопрос: «выполнение расчетов в таблицах word и excel.их сравнительные характеристики,» вы не могли бы мне помочь найти ответ?

Виталий, способ действительно интересный. Но я столкнулся вот с какой проблемой — когда файловая структура достаточно ветвиста, то абсолютные ссылки на файлы очень длинны, тем более если папки перемещать. Может ли MS Word при этом понимать ссылки относительные?

А можно спомощью макроса связать эксель и ворд

Естественно можно. С точки зрения VBA Эксель и Ворд — просто разные ветки одного корня.

Пишите на почту или в ICQ 270396958

А у меня пишет в Word — Ошибка связи!

Заработало когда выбрала не «Неформатируемый текст» ,а «формат HTML»

А вообще удобная очень вещь! Спасибо!

Возникла такая проблема. Формирую документ ворд, в начале которого заполняется таблица. Данные из этой таблицы разкидываются по всему документу по средством связей. Стоит лишь перекинуть этот документ в другую папку — связи теряются. Т.е. связи абсолютные. Существует ли метод формирования относительных связей без программирования в VBA.

В доплнение сказанному выше напишу, что нету в ворде способа формирования относительных связей ф-цией «ПравкаСпециальная вставка». Единственный выход — программирование в VBA.

Благодарю автора статьи, это поможет мне сэкономить неделю работы))

а киньте все таки кусок кода как абсолютные ссылки на относительные поменять!

Братва привет.А не подскажете прогу чтобы написанное в Excel автоматически отображалось в другом отдельном документе Word (то есть. имеется две разные таблицы одна в Excel другая в Word а вписать данные нужно в определенные графы в обоих документах).команды Связать,Скопировать с одного на другое дело нудное так как опись уж больно большой.скачал Гененратор Документов ver 1.1 помоему подходит только инсталировать невозможно.(качал с разных сайтов).может кто подкинет инфу?

Читать еще:  Как открыть поврежденный файл excel

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

Почему то часть связей в самом конце документа не хочет обновляться. Жму на связи, вместо обновить связь выходит только объек. Жму на эту кнопку, пишет Объект поврежден либо стал недоступен. Почему так происходит?

. прогу . написанное в Excel автоматически отображалось в отдельном документе Word . скачал Гененратор Документов

В Ворде аналогичная функция «Слияние»

Макрос, упрощающий связывание таблиц Word и Excel.

Выбираются ячейки в Excel и Word (можно только часть таблицы). После запуска, макрос сам формирует связи.

Если ячейка Excel перед созданием связанной ссылки для Word имела собственное имя (имя для ячейки можно задать в поле, находящемся левее строки формул) то после специальной вставке в Word сслыка будет не на адрес ячейки в формате R1C1 а на собственное имя ячейки (имя можно задавать и с использованием русских букв).

При этом при перемещении ячейки в Excel (вставка-удаление строк-столбцов) ссылка останется «живой».

При необходимости связать Word c ячейками из другого подобного файла Excel (обычно новый файл создается копированием старого с внесением изменений) достаточно после нажатия правой кнопки мыши на любом вставленном значении выбрать «Связанный объект Лист > Связи. » затем «Сменить связи. » и выбрать новый файл Excel столько раз, сколько у вас связанных ячеек. Word свяжет документ с ячейками в новом файле Excel которые имеют такие же имена, хотя и находятся в других местах листа Excel.

Обмен данными между Excel и Word

Узнайте, как обмениваться данными Excel с документами Word и другими файлами.

Чаще всего вам нужно будет просто вставлять статические данные Excel в документ Word. Для этого:

    Выделите данные в Excel.

  • Кликните правой кнопкой мыши и выберите в контекстном меню пункт Копировать (Copy) или нажмите Ctrl+C.
  • Откройте документ Word.
  • На вкладке Главная (Home) нажмите команду Вставка (Paste) >Специальная вставка (Paste Special).

  • Выберите переключатель Вставить (Paste), а затем в списке Как (As) щелкните по строке Формат HTML (HTML Format).
  • Нажмите ОК.

    Примечание: Вместо выполнения шагов 4-6, просто нажмите Ctrl+V.

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

    Примечание: Чтобы удалить таблицу, щелкните правой кнопкой мыши по значку в верхнем левом углу таблицы, а затем нажмите кнопку Удалить таблицу (Delete Table).

    Вы можете связать исходные данные Excel с данными, вставленными в Word. Если изменить данные в Excel, данные в Word будут обновляться автоматически.

    1. Повторите шаги с 1 по 4, приведенные ранее.
    2. Щелкните по переключателю Связать (Paste link). Затем выберите строку Формат HTML (HTML Format).
    3. Нажмите ОК.


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


    Измените данные в Excel.

    Примечание: В документе Word на вкладке Файл (File) выберите Сведения (Info). Затем в нижнем правом углу нажмите кнопку Изменить связи с файлами (Edit Links to files), чтобы открыть диалоговое окно Связи (Links). Здесь вы можете разорвать связь, изменить расположение файла Excel и т.д.

    Настройка связей между документом Word и таблицей Excel

    Очень многие в своей работе сталкиваются с необходимостью формировать отчёты, сводки, обобщающие документы на основе каких-то вычислений, расчетов, таблиц с исходными данными и их анализа. И часто для выполнения этих задач приходится прибегать к комбинации таких программных продуктов как Word (где формируется итоговый отчет для дальнейшей распечатки или пересылки кому-либо) и Excel (в котором собираются и обрабатываются исходные данные для отчета).

    Если разовые задачи не вызывают особых вопросов, то формирование периодических отчетов порой доставляет немало проблем. Рутинное копирование одних и тех же табличек или графиков (с немного изменившимися данными) в одни и те же документы крайне утомляет. Но этот процесс можно автоматизировать. Как это сделать — читайте ниже.

    Создание связи между Word и Excel

    Самый быстрый и эффективный способ создать связи между файлами — скопировать нужную информацию из одного и вставить в другой, воспользовавшись инструментом «Специальная вставка» . Для этого нужно выделить таблицу, ячейку или диаграмму в Excel, перейти в Word, поставить курсор в нужную часть документа и:

    — нажать правую кнопку мыши и выбрать пиктограмму с нужным способом вставки

    — или выбрать на вкладке «Главная» команду «Вставить» (нажать на стрелочку под иконкой) и в появившемся списке выбрать «Специальная вставка», либо воспользоваться сочетанием клавиш «CTRL+ALT+V» . В появившемся окне необходимо активировать пункт «Связать» , выбрать вариант вставки и нажать ОК.

    В результате вставленный объект будет связан с тем файлом, откуда он был скопирован, и при обновлении исходных данных можно будет быстро обновить связи в документе Word.

    Выбор способа вставки данных

    Как видно на рисунке 2, есть несколько способов вставки данных в документ. В повседневной работе придется выбирать, по сути, между двумя вариантами — вставить таблицу как картинку (без возможности ее форматирования) или как текст (а значит, с возможностью вносить изменения). Для диаграмм вариант всего один — картинка.

    Кроме того, важно отличать связанные объекты от внедренных. Внедрение — операция, которая не рассматривается в этой статье. Суть ее в том, что в документ Word внедряется объект Excel, который позволяет работать с данными в табличном процессоре прямо из документа Word. При этом исходный файл и текстовый документ никак не связаны. Внедрение используется редко, так как сильно увеличивает размер файла.

    В большинстве случаев при выборе способа вставки таблицы следует выбирать текстовый вариант, чтобы иметь возможность настроить форматирование под себя. Картинки можно вставлять, если форматирование в исходном документе Excel Вас полностью устраивает.

    Бывают ситуации, когда приходится вставлять не всю таблицу, а данные из отдельных ячеек. Например, когда нужно вставить в предложение какую-то цифру или текст, которые есть в файле Excel и будут изменяться, или же когда таблица в Word составляется из нескольких разрозненных ячеек Excel (из разных таблиц, листов или даже книг). В таких случаях копируем данные ячеек в нужное место и выбираем способ вставки «Неформатированный текст».

    Настройка способа обновления связей и работа с диспетчером связей

    Вставленные связи можно обновлять несколькими способами. Например, если на вставленном объекте кликнуть правой кнопкой мыши, то в меню будет кнопка «Обновить связь», нажатие которой приведет к обновлению выбранной связи.

    Можно задать параметры обновления сразу для всех объектов. Для этого нужно вызвать диспетчер связей документа. Проходим по пути «Файл»-«Сведения»-«Изменить связи с файлами» (данная команда доступна, когда в документе есть как минимум одна связь, а сам документ сохранен).

    В диспетчере показаны все связи файла. В группе «Способ обновления связи» можно выбрать тот вариант, который более предпочтителен или вообще отключить обновление связей. Также для каждой связи можно задать настройку «Сохранять формат при обновлении». Она отвечает за то, чтобы выбранное Вами форматирование не слетало, когда вы обновите связь.

    В этом же диспетчере можно разорвать связи, открыть или изменить источник.

    Работа со связями через коды полей Word

    По своей сути каждая связь представляет собой специальное поле Word. Если в документе со связями Вы нажмете ALT+F9 , то увидите, что вместо вставленных данных отобразятся коды этих полей.

    Работа с ними открывает возможности, которые не предоставляет стандартный диспетчер связей. И хотя коды полей Word — широчайшая тема, выходящая далеко за рамки данной статьи, пару примеров их полезного использования мы приведем:

    1) Изменение ссылок на документы сразу во всех связях

    Связи с исходными документами осуществляются через прямые ссылки. Если Вы переложили исходный файл, то нужно будет переподтянуть все связи. В диспетчере связей придется делать это для каждой связи отдельно (даже если выбрать несколько — диспетчер будет по очереди предлагать заменять каждую ссылку). Если же вы перейдете в режим отображения кодов полей ( ALT+F9 ), то старые ссылки можно поменять на новые простой заменой ( CTRL+H или «Главная-Заменить» ), указав старый адрес и новый.

    2) Использование именованных диапазонов для вставки таблиц

    Если вы вставляете в Word таблицу из Excel, то ссылка на нее будет содержать конкретный диапазон ячеек. То есть, если вы добавите в таблицу строки или столбцы — то данные обновятся только в пределах жестко указанного диапазона. Диспетчер связей позволяет изменить диапазон вручную. Автоматическое же изменение можно настроить, задав в Excel именованный динамический диапазон (урок здесь и здесь , не разберетесь — пишите нашему боту в Telegram, поможем), а в файле Word в режиме правки кодов полей после этого нужно будет заменить прямые ссылки на ячейки на название именованного диапазона. Теперь при изменении размера исходной таблицы в Excel документ в Word обновится корректно.

    Другие полезные тонкости работы с офисными программами всегда можно узнать здесь .

    Ваши вопросы по статье можете задавать через нашего бота обратной связи в Telegram: @KillOfBot

    Связать данные из разных файлов.

    Как связать данные Excel и/или Word для автоматического обновления?

    Ежедневно мы работаем не в одном, а во многих файлах Excel и Word. Довольно часто необходимо связать данные в разных файлах таким образом, чтобы при изменении данных в одном месте все связанные данные изменялись автоматически. Если автоматические связи не настроены, то приходится несколько раз выполнять одну и ту же операцию по изменению данных в файлах.

    Когда нужна автоматическая связь данных?

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

    Другой пример, требующий связать данные. При изменении реквизитов клиента необходимо изменить данные во всех связанных договорах. При этом данные клиента могут находиться как в файле Excel, так и в файле Word. Договоры же обычно делают в Word.

    Кроме изменения реквизитов клиента, например, строительным компаниям часто приходится вести расчеты для клиента в Excel. Это может быть: расчет общей стоимости строительства, расчет стоимости фундамента, стоимость транспортных услуг, стоимость внутренних работ и т.д. Методика расчета стоимости каждого этапа отличается от других. Поэтому расчеты ведутся или в разных листах Excel, или даже в разных книгах Excel. А в договор на оказание услуг необходимо вносить данные о стоимости каждого этапа работ.

    Некоторые (но не все) задачи по связи данных в Excel решает функция ВПР. Но ВПР пригодна для работы со сплошными прямоугольными массивами данных. Сбор же данных из многих неунифицированных файлов Excel — очень трудоемкая и кропотливая работа. Тем более, если эти данные затем необходимо перенести во множество документов Word. И если не настроена автоматическая связь данных в разных файлах, то работа по переносу данных требует большого напряжения, пристального внимания и долгого вглядывания в монитор.

    Решать такие задачи по связи данных в разных файлах эффективно с помощью макросов VBA, написанных под конкретную задачу.

    Схематично описанный ниже проект был реализован для московской строительной компании, осуществляющей строительство индивидуальных домов на участках за пределами МКАД.

    Распечатка бланков Word с данными из Excel

    15 век. Стоит принц — ждет письма от любимой невесты.
    3 дня стоит — не ест, не пьет.Наконец прилетает почтовый голубь.
    Принц дрожащими руками открывает письмо, а там «Куем мечи. Недорого.»
    Средневековый спам 🙂

    Постановка задачи

    Предположим, что у нас имеется вот такая таблица Excel:

    В ней хранится информация о ключевых клиентах нашей компании (адреса, имена и т.д.), которых мы хотим поздравить с очередным праздником с помощью вот такого поздравительного письма в Word:

    Задача состоит в том, чтобы автоматически создать на каждого отдельное письмо, куда будут подставлены ФИО и название компании клиента, с тем чтобы потом эти письма вывести на печать. В терминах Microsoft Office такая процедура называется Слиянием (Mail Merge) .

    Шаг 1. Подготовка списка клиентов в Excel

    Таблица со списком клиентов должна удовлетворять нескольким простым условиям:

    • шапка таблицы должна быть простой — одна строка с уникальными названиями столбцов (без повторений и пустых ячеек)
    • в таблице не должно быть объединенных ячеек
    • в таблице не должно быть пустых строк или столбцов (отдельные пустые ячейки допускаются)
    • т.к. Excel и Word не смогу сами определить пол клиента по имени, то имеет смысл сделать отдельный столбец с обращением (господин, госпожа и т.п.) или с родовым окончанием (-ый или -ая) для обращения «Уважаемый(ая). «

    Шаг 2. Подготовка шаблона письма в Word

    Здесь все проще — нужен обычный документ Word с оставленными в нем пустыми местами для вставки полей из списка Excel.

    Шаг 3. Слияние

    Открываем шаблон письма в Word и запускаем пошаговый Мастер Слияния на вкладке Рассылки (Mailings) кнопкой Начать слияние ( Start Mail Merge ) – Пошаговый мастер слияния ( StepbyStep Merge Wizard ) :

    В Word 2003 и старше эта команда была доступна в меню Сервис — Письма и рассылки — Мастер слияния (Tools — Letters and Mailings — Mail Merge) .

    Далее следует процесс из 6 этапов (переключение между ними — с помощью кнопок Вперед (Next) и Назад (Back) в правом нижнем углу в области задач).

    Этап 1. Выбор типа документа.

    На этом шаге пользователь должен выбрать тип тех документов, которые он хочет получить на выходе после слияния. Наш вариант — Письма (Letters) .

    Этап 2. Выбор документа

    На этом шаге необходимо определить, какой документ будет являться основой (заготовкой) для всех будущих однотипных сообщений. Мы выбираем — Текущий документ (Current document) .

    Этап 3. Выбор получателей

    На этом шаге мы подключаем список клиентов в Excel к документу Word. Выбираем Использование списка и жмем на Обзор (Browse) , после чего в диалоговом окне открытия файла указываем где лежит наш файл со списком клиентов. После выбора источника данных, Word позволяет провести фильтрацию, сортировку и ручной отбор записей при помощи окна Получатели слияния:

    Этап 4. Создание письма

    На этом этапе пользователь должен указать – куда именно в документ должны попасть данные из подключенного списка. Для этого необходимо установить курсор в точку вставки в письме и использовать ссылку Другие элементы — она выводит полный набор всех полей списка, из которого мы и выбираем нужное поле для вставки:

    В итоге, после вставки всех полей слияния у нас должно получиться нечто похожее:

    Этап 5. Просмотр писем

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

    Этап 6. Завершение слияния

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

    Если необходимо сохранить созданные в результате слияния документы для дальнейшего использования или требуется внести ручную правку в некоторые из документов, то лучше использовать ссылку Изменить часть писем (Edit individual letters) , которая выведет результаты слияния в отдельный файл:

    Вуаля! Получившийся документ можно отправить на печать или отредактировать-сохранить по желанию для похожих рассылок в будущем.

    Ссылки по теме

    Комментарии:

    Для Николая! Спасибо за подсказку.
    Но есть предложение (или просьба),если не затруднит Вас указывать для какой версии сделан приемчик и пример,потому что уже появился MS Office 2010 (темная лошадка),чтобы потом долго не мучаться.
    Также имеется несколько просьб/вопросов.
    1.Можно ли сделать сводные таблицы из даных собраных через общие книги,чтобы отсекать все неправильные изменения сделаные из удаленных офисов общей книге на сервере, а потом даные вигружать в таблицу в формате XML Ecxel 2003?
    Возможно этакую проблему можно сделать в несколько этапов, тогда пожалуйста подскажите на примере- как коректно нужно работать с общими книгами особенно если листы для ввода даных разнесены на разных компах а сама книга «далеко» на сервере.
    Вторая часть моего вопроса о работе с XML для импорта/експорта даних, есть в коментариях к статье «Импорт даных из внешних баз Access. «.
    Заранее Благодарен!!

    я решила проблему следующим образом^

    Использование динамического обмена данными
    Динамический обмен данными (DDE) — это метод передачи данных между приложениями, который доступен в операционной системе Microsoft Windows®. Он использует общую память для обмена данными. При использовании других методов обмена данными возникнет следующая проблема: данные из листа будут передаваться в формате, в котором они хранятся в Excel, а не с форматированием, применяемым к ячейкам листа.

    Чтобы выбрать для обмена данными метод DDE при подключении к листу Excel во время выполнения слияния, нужно установить один флажок в Word:

    В меню Сервис выберите Параметры, затем перейдите на вкладку Общие.
    Щелкните Подтверждать преобразование при открытии.
    Во время выполнения слияния на этапе подключения к файлу данных после определения местоположения листа Excel, к которому следует подключиться, открывается диалоговое окно Подтверждение источника данных. Щелкните Книги MS Excel с помощью DDE (*.xls) и нажмите кнопку ОК. В диалоговом окне Microsoft Excel для поля Диапазон или имя выберите диапазон ячеек или лист, содержащий нужные сведения, затем нажмите кнопку ОК. Числа в документе слияния будут выглядеть так же, как в ячейках использованного листа Excel.

    Примечание. Рекомендуется отключить параметр Подтверждать преобразование при открытии после завершения слияния. Иначе предложения подтвердить источник данных будут отображаться чаще, чем нужно.

    Читать еще:  Как ворд перенести в эксель
  • Ссылка на основную публикацию