Как выгрузить отчет в word

Экспорт данных Access в документ Word

Access для Microsoft 365 Access 2021 Access 2019 Access 2016 Access 2013 Access 2010 Access 2007 Еще…Меньше

С помощью мастера экспорта в RTF-файл можно экспортировать данные из базы данных Access в документ Microsoft Word. В этой статье объясняется, как использовать мастер и как сохранить параметры экспорта в виде спецификации для дальнейшего использования.

В этой статье

  • Основы экспорта данных в Word

  • Экспорт данных в Word

  • Как Access экспортирует объекты в Word

  • Дополнительные сведения

Основы экспорта данных в Word

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

  • Начало операции.    Для экспорта данных из Access в Word необходимо открыть Access. В Word нет средства импорта данных из базы данных Access. Вы также можете сохранить базу данных или таблицу Access в виде документа Word с помощью команды Сохранить как в Access.

  • Объекты, поддерживающие экспорт.    Вы можете экспортировать таблицу, запрос, форму или отчет. Можно также экспортировать только записи, выбранные в определенном представлении. Макросы и модули экспортировать нельзя. При экспорте формы или таблицы с подчиненными формами или подтаблицами экспортируется только основная форма или таблица. Все подчиненные формы и подтаблицы следует экспортировать в Word отдельно. При экспорте отчета, напротив, все подчиненные формы и вложенные отчеты экспортируются вместе с главным отчетом.

  • Результат операции.    Мастер экспорта в RTF-файл всегда экспортирует форматированные данные. Это означает, что экспортируются только видимые в объекте или представлении поля и записи, а также параметры формата отображения. Столбцы и записи, скрытые из-за применения фильтра, не экспортируются. Макет отчета при экспорте также сохраняется.

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

Экспорт данных в Word

Процесс экспорта данных в документ Word включает следующие основные этапы:

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

  • Запуск мастера экспорта в RTF-файл.

  • Сохранение параметров в виде спецификации экспорта для последующего использования (необязательно).

В следующих разделах описано, как выполнить каждую из этих задач.

Подготовка к экспорту

  1. Откройте исходную базу данных Access.

  2. На панели навигации выберите объект с данными, которые вы хотите экспортировать.

    Экспортировать можно таблицу, запрос, форму или отчет.

  3. Просмотрите исходные данные, чтобы убедиться в отсутствии индикаторов ошибок (треугольников зеленого цвета) или значений ошибок, таких как #ЧИСЛО!.

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

  4. Если конечный документ Word существует и открыт, закройте его перед выполнением операции. Перед перезаписью файла мастер запрашивает подтверждение.

    Примечание: Добавить данные в существующий документ Word невозможно.

  5. Если вы хотите экспортировать только часть таблицы, запроса или формы, откройте нужный объект в базе данных Access и выделите записи.

Экспорт данных

  1. На вкладке «Внешние данные» в группе «Экспорт» нажмите кнопку Word.

  2. Откроется мастер Экспорт – Файл RTF.

    Выберите назначение и параметры экспорта в диалоговом окне "Экспорт – Файл RTF".

    Примечание: Команды Экспорт доступны только в том случае, если открыта база данных.

  3. В мастере Экспорт – Файл RTF укажите имя конечного файла.

  4. Мастер всегда экспортирует форматированные данные. Чтобы просмотреть документ Word после экспорта, установите флажок Открыть целевой файл после завершения операции экспорта.

  5. Если вы выделили определенные записи до начала экспорта, можно установить флажок Экспортировать только выбранные записи. Если же требуется экспортировать все записи в представлении, не устанавливайте флажок.

    Примечание: Если записи не выделены, этот флажок недоступен (неактивен).

  6. Нажмите кнопку ОК.

  7. Если документ назначения существует, вам будет предложено нажать кнопку «Да», чтобы переписать файл. Нажмите кнопку «Нет», чтобы изменить имя конечного файла, а затем нажмите кнопку «ОК» еще раз.

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

Как Access экспортирует объекты в Word

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

Элемент

Что нужно учитывать при экспорте

Имена полей

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

Многозначные поля

Многозначное поле Access экспортируется в один столбец в Word. Значения разделяются запятыми (,).

Рисунки, объекты и вложения

Все графические элементы, такие как логотипы, данные в полях объектов OLE и вложения, не экспортируются.

Графы

Объекты Microsoft Graph не экспортируются.

Выражения

Выражения не экспортируются в документ Word. Экспортируются только их результаты.

Подчиненные формы и подтаблицы

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

Дополнительные сведения

  • Сведения о том, как сохранить сведения об экспорте в виде спецификации, которую можно использовать повторно, см. в статье Сохранение параметров операции импорта или экспорта в виде спецификации.

  • Дополнительные сведения о запуске спецификаций см. в статье Выполнение сохраненной операции импорта или экспорта.

  • Дополнительные сведения о запуске спецификаций в определенное время см. в статье Планирование импорта или экспорта.

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

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

Нужна дополнительная помощь?

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

В Microsoft Excel, в основном, используется два типа форматов файлов: «.xlsx» (современный формат) и «.xls» (использовался в версиях Excel 1997-2003). Документы Microsoft Word имеют два основных формата файлов: «.docx» (современный формат) и «.doc» (использовался в версиях Word 1997-2003).

Содержание:

  1. Как таблицу в Экселе перенести в Ворд — 1 способ
  2. Как вставить таблицу Эксель в Ворд — 2 способ
  3. Как вставить Excel в Word — 3 способ
  4. Уменьшение ширины таблицы Excel после вставки в документ Word
  5. Как Excel перевести в Word в программе — 4 способ
  6. Как конвертировать Excel в Word онлайн — 5 способ
  7. Выводы статьи

Между собой форматы «XLSX», «XLS» или «DOCX», «DOC» никак не связаны из-за разной структуры, поэтому напрямую сохранить файл одного формата в другом формате не получится. Нам придется переносить документ Excel в Word вручную или воспользоваться помощью программ или онлайн сервисов для конвертации файлов.

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

Как таблицу в Экселе перенести в Ворд — 1 способ

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

Выполните следующие действия:

  1. Откройте книгу Excel.
  2. На открытом листе Excel выделите диапазон содержимого, который нужно перенести в документ Ворд.
  3. Щелкните правой кнопкой мыши внутри выделенной таблицы, в контекстном меню выберите «Копировать». Другой вариант для копирования: нажмите на клавиши «Ctrl» + «C».

копировать excel

  1. Откройте документ Word.
  2. Щелкните правой кнопкой мыши внутри документа, в контекстном меню в пункте «Параметры вставки:» выберите вариант: «Сохранить исходное форматирование». Другой способ для вставки: кликните мышью в открытом документа Word, а затем нажмите на клавиши «Ctrl» + «V».

вставка в word

При выборе варианта вставки в Word, можно использовать другие способы сохранения таблицы:

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

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

параметры вставки

При использовании данного способа мы сможем отредактировать скопированную таблицу в Word. Можно изменить содержимое таблицы: изменить данные, форматирование, ширину и высоту, шрифт и т. д.

Из минусов этого способа можно отметить то, что если данные на листе Excel занимают больше места, чем на листе Word, то вся таблица не поместится по ширине (особенно это станет заметно при представлении «Разметка страницы»).

Как вставить таблицу Эксель в Ворд — 2 способ

В этом способе мы вставим содержимое таблицы Excel в документ Word, в котором отрыта пустая таблица Excel.

Пройдите следующие шаги:

  1. В окне программы MS Word войдите во вкладку «Вставка», в группе «Таблицы» нажмите на стрелку внизу кнопки «Таблица».
  2. В меню «Вставка таблицы» выберите «Таблица Excel».

таблица excel

  1. В окне документа Word откроется пустая таблица Excel.

таблица excel вставлена

  1. Откройте книгу MS Excel.
  2. Выделите содержимое таблицы на листе Excel.
  3. В меню «Главная» кликните на значок «Копировать», который находится в группе «Буфер обмена».

копировать

  1. В окне программы Word нажмите на кнопку «Вставить».
  2. Таблица Excel открыта в окне программы Word.

таблица excel вставлена в word

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

прокрутка таблицы

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

Как вставить Excel в Word — 3 способ

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

Проделайте следующие действия:

  1. В окне программы Excel выделите таблицу.

выделение таблицы

  1. В меню «Главная», в группе «Буфер обмена» нажмите на треугольничек на кнопке «Копировать».
  2. В открывшемся меню выберите пункт «Копировать как рисунок…».

копировать как рисунок

  1. В окне «Копировать как рисунок» нужно выбрать параметры копирования изображения.

параметры копирования

  1. Откройте страницу документа Word в меню «Главная», а затем нажмите на кнопку «Вставить», находящуюся в группе «Буфер обмена».

таблица в word

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

Уменьшение ширины таблицы Excel после вставки в документ Word

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

  1. Выделите вставленную таблицу Excel в документе Word.
  2. Откройте меню «Макет».
  3. В группе «Размер ячейки» нажмите на кнопку «Автоподбор», выберите пункт «Автоподбор по содержимому».

автоподбор

Таблица уменьшилась до требуемого размера и поместилась на странице документа.

таблица уменьшина

Как Excel перевести в Word в программе — 4 способ

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

ABBYY FineReader — платная программа на русском языке от российского разработчика. Компания ABBYY — один из мировых лидеров в своей нише программного обеспечения.

Для конвертирования файла из формата Excel в формат Word, необходимо сделать следующее:

  1. Запустите программу ABBYY FineReader на компьютере.
  2. В окне программы в разделе «Просмотр и редактирование PDF-документов» нажмите на кнопку «Открыть PDF-документ» (да-да, именно так).

открыть pdf

  1. В окне Проводника на нижней панели вместо «PDF-файлы» выберите «Все файлы».
  2. Выберите на ПК документ Excel, нажмите на кнопку «Открыть».
  3. Программа выполнит распознавание файла, а затем откроет его содержимое в окне «Новый — ABBYY FineReader».

файл распознан

  1. Нажмите на стрелку кнопки «Сохранить копию документа», а контекстном меню выберите «Документ Microsoft Word».

сохранить в word

  1. В окне Проводника присвойте имя новому документу, нажмите на кнопку «Сохранить».
  2. После выполнения конвертирования, на Рабочем столе откроется окно программы Word со вставленной таблицей из книги Excel.

файл конвертирован

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

Как конвертировать Excel в Word онлайн — 5 способ

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

Преобразование Excel в Word онлайн проходит в следующем порядке:

  1. Войдите на страницу сервиса CoolUtils.com для загрузки на онлайн сервис файла Excel.
  2. Нажмите на кнопку «Browse» для выбора файла на своем компьютере. Эта кнопка станет активной после включения в браузере Adobe Flash Player.
  3. В пункте «Настройте опции», в настройке «Конвертировать в» выберите формат «Doc».
  4. В пункте «Получить файл» нажмите на кнопку «Скачать конвертированный файл».

скачать конвертированный файл

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

таблица открыта в word

Если нужно, отредактируйте файл, а затем сохраните его в формате Word.

Выводы статьи

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

Похожие публикации:

  • Как в Excel снять защиту листа не зная пароль — 2 способа
  • Как сделать рамку для оформления текста в Word
  • Как сделать нумерацию страниц в Word
  • Как удалить нумерацию в Word
  • Как убрать водяные знаки в Word — 2 способа

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

Выгрузка таблиц из 1С

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

Например, вам нужно получить всю номенклатуру с видом «Материалы» при этом нужны только колонки «Номенклатура» и «Единица».

В том случае, когда необходимо выгрузить данные с их фильтрацией, первым делом, необходимо настроить список в меню «Ещё» табличной части.

настройка списка

Наша команда предоставляет услуги по консультированию, настройке и внедрению 1С.

Связаться с нами можно по телефону +7 499 350 29 00.

Услуги и цены можно увидеть по ссылке.

Будем рады помочь Вам!

В появившемся окне из левой части (доступные поля) необходимо выбрать те, по которым вы будете делать отбор (в данном случае «Вид номенклатуры»). В правой части окна устанавливаются значения параметров отбора. При этом вид сравнения не ограничивается одним лишь равенством.

вид сравнения

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

Следующим шагом будет вывод данного списка в табличный документ.

В меню «Еще» выберите пункт «Вывести список».

вывод в список номеналктуры

Если вам нужно вывести не все колонки, как в нашем примере, то установите «галочки» только на тех, которые необходимы.

выбор необходимых колонок

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

Выгрузка отчетов и печатных форм из 1С

Любой отчет, печатную форму, табличный документ (например, который мы получили в нашем примере) в 1С 8.3 можно выгрузить во внешний файл в два клика.

На верхней панели программы находится кнопка сохранения во внешний файл (интерфейс «Такси»). Она будет активна на любых отчетах и печатных формах, где доступно сохранение.

кнопка сохранить как

После нажатия на кнопку «Сохранить как» программа предложит вам выбрать формат, имя и место расположения полученного файла. Оформление сохраняется при условии его доступности в выбранном формате — HTML, PDF, Excel, Word.

сохранение в эксель или любой другой формат

Выгрузка базы данных 1С целиком

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

Зайдите в нужную информационную базу в режиме конфигуратора.

список информационных баз

В меню «Администрирование» выберите пункт «Выгрузить информационную базу».

выгрузить информационную базу

Укажите при необходимости другое имя файла и путь для сохранения.

выбор папки для сохранения

Полученный файл выгружаемых данных с расширением *.dt в дальнейшем очень легко загрузить. Для этого в режиме конфигуратора в меню «Администрирование» выберите пункт «Загрузить информационную базу» и откройте полученный ранее файл *.dt.

Всем привет, сегодня мы поговорим о том, как можно выгрузить данные из Access в такие приложения как Word и Excel. Но не о стандартном способе, который есть в  Access (связь с Office), а о способе, который позволяет выгружать данные в заданный шаблон как в Word, так и в Excel.

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

Использование слияния из самого Word-а не очень удобно, поэтому сегодня я расскажу, как можно заполнять такие шаблоны напрямую из Access, путем нажатия на одну кнопку.

Кроме выгрузки в шаблон Word, иногда возникает и необходимость выгрузки в шаблон Excel, и этот способ мы тоже сегодня рассмотрим.

Содержание

  1. Экспорт данных из Access в шаблон Word
  2. Код VBA для выгрузки данных в шаблон Word
  3. Экспорт данных из Access в шаблон Excel
  4. Код VBA для выгрузки данных в шаблон Excel

Вся разработка делится на две части, это:

  • Настройка шаблона Word;
  • Настройка выгрузки данных в шаблон.

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

Примечание! Я использую Microsoft Word 2003.

Открываем шаблон Word, для начала добавим необходимую панель инструментов, для этого нажимаем «Вид -> Панель инструментов» и ставим галочку «Формы». Теперь у Вас отобразилась панель инструментом «Формы». Все, что осталось сделать — это вставить в местах, в которых необходимо выводить данные, элементы «Текстовое поле», которые доступны на только что добавленной панели инструментов.

После добавления поля, у Вас появится серая область, которая свидетельствует о том, что поле добавлено. Теперь необходимо задать имя этого поля, для того чтобы потом из access вставлять в него значения (стандартное названия не очень удобное). Для этого щелкните правой кнопкой мыши по полю и нажмите «Свойства». В поле закладка напишите желаемое имя этого поля, я в примере назвал его MyTestPole.

Скриншот 1

Курс по SQL для начинающих

Создайте столько полей, сколько Вам нужно.

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

Переходим к более интересной задачи, это к реализации самой выгрузки из Access в этот шаблон на VBA.

Примечание! Я использую Access в связке с MS SQL 2008, поэтому и данные буду брать от туда.

Код VBA для выгрузки данных в шаблон Word

Допустим, у Вас есть форма, сделайте на ней кнопку (я назвал ее testbutton) и в событие нажатие кнопки вставьте следующий код VBA:

   
   Private Sub testbutton_Click()
   
   'Объявляем переменные
   Dim FileDialog As FileDialog
   Dim rsd As ADODB.Recordset
   Dim strSQL As String
   Dim WordApOb As Object
   Dim WordOb As Object
   Dim path As String
   Set rsd = New ADODB.Recordset
   
   'запрос к базе данных для получения необходимых данных
   strSQL = "select * from dbo.table where KOD = " & Me.kod & ""
   rsd.open strSQL, CurrentProject.Connection
  
  'Выбираем шаблон
   Set FileDialog = Application.FileDialog(msoFileDialogOpen)
   
   'убираем множественный выбор, он нам не нужен
   FileDialog.AllowMultiSelect = False
  
  'очистим и установим фильтры
   FileDialog.Filters.Clear
   FileDialog.Filters.add "Word", "*.doc"
   
   'установим фильтр по умолчанию
   FileDialog.FilterIndex = 1
   
   'проверяем, что сделал user, если выбрал шаблон, то начинаем работу
   If FileDialog.Show = False Then
     'Если нет, то выходим
     Set dlgFile = Nothing
     Exit Sub
   End If
   
   'получаем путь к файлу
   path = Trim(FileDialog.SelectedItems(1))
   
   'Очистим переменную
   Set FileDialog = Nothing
   If path <> "" Then
   
   'Будем отслеживать ошибки
   On Error GoTo Err_testbutton_Click
   
   'Создаем объект Word
   Set WordOb = CreateObject("Word.document")
   
   'Задаем нашему документу значение из шаблона
   Set WordOb = GetObject(path)
   
   'Задаем значение объекту word.Application
   Set WordApOb = WordOb.Parent
   
   'делаем приложение word видимым
   WordApOb.Visible = True
   
   'ищем наше поле в шаблоне
   WordOb.Bookmarks("mytestpole").Select
   
   'задаем ему новое значение из нашего Recordset
   WordApOb.Selection.TypeText Text:=Nz(rsd.Fields("field").Value, " ")
   'и так далее по всем полям
   
   'в конце перейдем на начало нашего документа
   WordApOb.Selection.Goto wdGoToFirst
   'и активируем его
   WordApOb.Activate
   
   'Очистим переменные
   Set WordOb = Nothing
   Set WordApOb = Nothing
   
   Exit_testbutton_Click:
     Exit Sub
   
   Err_testbutton_Click:
     MsgBox Err.Description
     'в случае ошибки будем делать следующие
     'закроем word без сохранения
     WordOb.Close (wddonotsavechanges)
     WordApOb.Quit
    'и также очистим переменные
     Set WordOb = Nothing
     Set WordApOb = Nothing
     Resume Exit_testbutton_Click
    End If
   
   End Sub

Код прокомментирован, поэтому сложностей возникнуть не должно. Здесь весь смысл сводится к созданию объекта word.document и word.application. А после мы уже работаем с нашими объектами, т.е. заполняем их.

Экспорт данных из Access в шаблон Excel

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

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

Код VBA для выгрузки данных в шаблон Excel

Сначала добавьте кнопку на форму (я ее назвал testexcel) и вставьте следующий код в событие «Нажатие кнопки».

   
   Private Sub testexcel_Click()
   
   'Объявляем переменные
   Dim XL As Object
   Dim XLT As Object
   Dim newrow As Object
   Dim rsd As ADODB.Recordset
   Dim strSQL As String
   Set rsd = New ADODB.Recordset
   
   'Запрос к базе данных
   strSQL = "select * from dbo.table where kod = " & Me.kod & ""
   rsd.open strSQL, CurrentProject.Connection
   
   'Создаем необходимые объекты
   Set XL = CreateObject("Excel.Application")
   'для примера показываю, как можно сразу загружать шаблон без выбора
   Set XLT = XL.Workbooks.open("C:testfile.xls")
   
   '1 способ - если в источнике данных всего одна строка
   With XLT.Worksheets("Лист1")
              .[a1] = rsd.Fields("field1")
              .[b1] = rsd.Fields("field2")
              .[c1] = rsd.Fields("field3")
              .[d1] = rsd.Fields("field4")
            End With
   
   '2 способ - если строк в источнике несколько
   'причем мы учтем то, что у нас есть шапка и примечание в Excel
   'и мы не знаем, сколько строк у нас вставится 
   'и поэтому строки будем добавлять в случае необходимости
   'зададим, с какой строки будем начинать вставлять данные
   Rowss = 10
   'для нумерации
   numrow = 1
   'запускаем цикл, он будет работать до тех пор, пока не закончатся строки в нашем источнике
   While Not (rsd.EOF)
      'смотрим, если строк больше чем мы задали в шаблоне
      If Rowss >= 12 Then
          'то добавляем строку
         XLT.Worksheets("Лист1").Rows(Rowss).Insert
          'Запомним нашу строку
         Set newrow = XLT.Worksheets("Лист1").Rows(Rowss)
          'и вставим туда копию предыдущей строки
          'для того если вдруг у вас там есть объединенные ячейки или какие-то нужные данные
          'так как новая строка создастся без всяких объединений и значений
         XLT.Worksheets("Лист1").Rows(Rowss - 1).Copy newrow
          'это просто для примера как можно очистить некий диапазон внутри документа
       'XLT.Worksheets("Лист1").Range("A10:F10").ClearContents
       'динамически формируем адрес нужной ячейки
          cell = "a" & Rowss
          'и задаем ей значение
         XLT.Worksheets("Лист1").Range(cell) = numrow
         cell = "b" & Rowss
         XLT.Worksheets("Лист1").Range(cell) = rsd.Fields("field5").Value
         'переходим на следующую строку
          Rowss = Rowss + 1
          'переходим на следующую строку в источнике данных
         rsd.MoveNext
      Else
          'а это выполняется до тех пор, пока не закончатся заданные строки в шаблоне
          'т.е. если строк в источнике всего 1, то в код, который выше мы даже не попадем
         cell = "a" & Rowss
         XLT.Worksheets("Лист1").Range(cell) = numrow
         cell = "b" & Rowss
         XLT.Worksheets("Лист1").Range(cell) = rsd.Fields("field5").Value
         Rowss = Rowss + 1
         rsd.MoveNext
      End If
         
        'для нумерации
        numrow = numrow + 1
   'конец цикла
   Wend
   
   'это просто пример как можно удалить строку целиком
   'XLT.Worksheets("Лист1").Rows(20).Delete
   
   'делаем Excel видимым
   XL.Visible = True
   
   'Очищаем переменные
   Set XL = Nothing
   Set XLT = Nothing
   Set newrow = Nothing
   
   End Sub

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

Для сведения, я здесь при создании объекта и Word.Application и Excel.Application использовал позднее связывание, для того чтобы не добавлять необходимые библиотеки и обеспечить совместимость.

Надеюсь, мои примеры Вам помогут!

При создании отчетов в Word с использованием данных из таблиц Excel люди обычно выполняют две задачи:

  • Иов А : Введите данные в таблицу Excel для расчета.
  • Работа B : Откройте документы Word, чтобы обновить результаты расчетов из Excel (текст отчета обычно не сильно меняется).

Рисунок 1: Автоматическое создание отчетов в Word из таблицы данных Excel

фигура 1 : Excel, данные за предыдущий период использованы для отчетов за июль 2005 г.

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

Например, мы рассматриваем отчет о пассажирских перевозках 4 производителей автомобилей HTX, LTD, QD и CT. Каждый месяц вам нужно включать данные текущего месяца и предыдущего месяца, чтобы сравнивать увеличение и уменьшение. Сейчас нам нужно провести анализ данных в августе 2005 года.

Шаг 1 ( работа А ): В H.1 у нас есть таблица Excel с данными за предыдущий период (июль 2005 г.) с формулами для расчета общего количества пассажиров, что увеличивает количество пассажиров по сравнению с прошлым месяцем. нам просто нужно ввести данные отчетного месяца, Excel автоматически рассчитает оставшиеся числа. После завершения импорта он рассчитывается с данными за текущий период (август 2005 г.) как H.2.

Изображение 2: Автоматическое создание отчетов в словах из таблицы данных Excel

фигура 2 : Excel, данные за текущий период использованы для отчетов за август 2005 г.

Шаг 2: В H.3 проанализируйте данные, полученные в H.1. Что необходимо сделать, так это скорректировать данные предыдущего периода в данных этого периода в этой таблице анализа (т. Е. Изменить H.3 на H.4). Теперь мы свяжем данные из Excel в Word, чтобы следующие периоды нужно было исправить только в Excel, а затем сообщим Word автоматически обновлять данные из Excel.

Сначала перейдите в электронную таблицу Excel, скопируйте поле данных, необходимое как C2 в H.2 (поле выделено в H.2), а затем перейдите в Word и поместите курсор в то место, где вам нужно исправить данные (непосредственно перед число 272601 в H.3). Удалите значение 272 601 в H.3, затем нажмите на Правка> Специальная вставка меню, Специальная паста появится панель. Вы выбираете Вставить ссылку> Неформатированный текст а потом ОК (эти операции временно называются «Вставить ссылку»), новая часть вставляется как 273,780, как в H.4, но фон этого числа 273,780 серый. Проделайте то же самое с другими рисунками, которые нужно изменить. (Обратите внимание, что при копировании из Excel вы должны скопировать всю ячейку, а не просто ввести номер и скопировать).

Рисунок 3: Автоматическое создание отчетов в Word из таблицы данных Excel

Рисунок 3 : Word, анализируя данные H.1

Обратите внимание: если область Вставить ссылку не серая, выполните следующие действия: перейдите к Инструменты> Параметры меню выберите Вид вкладка Затенение поля Выбрать Всегда тогда ОК .

В частности, для цифр, которые могут иметь отрицательное или положительное значение, и это значение влияет на текст в документе Word, это немного сложнее. Что касается снижения на 44,44% в H.3: предыдущий месяц уменьшился на 44,44%, потому что значение в Excel было -44,44 соответственно (в H.1). В этом месяце значение в таблице Excel составляет 16,39 (в H.2), мы должны отображать текст как увеличение на 16,39% в Word. Как сделать следующее: сначала вы открываете электронную таблицу Excel (H.2), для тех столбцов, которые показывают уменьшение или уменьшение (в этом примере столбцы D и E), мы должны создать 2 дополнительных столбца, чтобы отображать текст для каждого столбец. Делаем столбец D следующим образом (столбец E делает то же самое):

Рисунок 4: Автоматическое создание отчетов в Word из таблицы данных Excel

 <em>Рисунок 4</em> : Word, анализ данных H.2 - Вставьте 2 столбца F и G, чтобы дополнить столбец D как H.5.  В котором столбец F представляет знак столбца D, а столбец G представляет абсолютное значение столбца D. 
  • Введите формулу F2 в поле:

= ЕСЛИ (D2 = 0; «не увеличивается и не уменьшается»; ЕСЛИ (D2> 0; «увеличить»; «уменьшить»))

Эта функция учитывает значение ячейки D2, если = 0, отображает «нет увеличения или уменьшения», если> 0, отображает «увеличение», если
Скопируйте приведенную выше формулу для ячеек F3, F4, F5, F6.

  • Введите в ячейку G2 формулу:

= ЕСЛИ (D2 0; ABS (D2); «»)

Эта функция принимает абсолютное значение ячейки D2.

Скопируйте приведенную выше формулу для ячеек G3, G4, G5, G6. Вы получите те же сведения, что и H.5.

Теперь вернитесь к Word в H.3:

Рисунок 5: Автоматическое создание отчетов в Word из таблицы данных Excel

 - Удалите слово «уменьшенный», в Excel скопируйте поле F5 в H.5, затем вставьте ссылку в Word. 
  • Удалите «44,44», через Excel скопируйте ячейку G5 в H.5, а затем вставьте ссылку в Word.

Сделайте то же самое для других частей, которые требуют модификации.

Если все сделано правильно, вы получите отчет за август 2005 г., как H.4.

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

Обратите внимание: чтобы Word не обновлял данные автоматически при открытии файла: перейдите к Инструменты> Параметры> Общее меню снимите флажок » Обновить автоматические ссылки при открытии «. В противном случае каждый раз, когда вы открываете файл Word со связанными данными, Word всегда запрашивает обновления.

ИЗОТОПЫ
Почта: dongvi@gmail.com

Понравилась статья? Поделить с друзьями:
  • Как выгрузить котировки акций в excel
  • Как выгрузить контакты с андроида в excel
  • Как выгрузить книгу продаж в excel
  • Как выгрузить каталог с сайта в excel
  • Как выгрузить информацию с сайта в excel