Экспорт N количество записей данных из Excel в слово - PullRequest
0 голосов
/ 25 июня 2018

Мне было интересно, возможно ли создать набор ввода данных из Microsoft Excel и экспортировать его непосредственно в Microsoft Word?

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

Я не собираюсь задавать количество записей в Word, копировать и вставлять, но, добавляя больше записей в Excel, данные переносятся из Excel в Word. Я сам не специалист по кодированию, но я смотрел несколько видео на YouTube и ищу руководство.

Ответы [ 2 ]

0 голосов
/ 25 июня 2018

Мне кажется, вы могли бы сделать это с чем-то не более сложным, чем поле LINK в Word, которое вы можете создать довольно просто с помощью Copy (в Excel), затем Paste Special> Paste Link (в Word), с подходящимВставить формат.Если вы назовете диапазон Excel перед копированием и вставкой, диапазон в Word будет автоматически расходоваться / сокращаться в соответствии с тем, что происходит с диапазоном Excel.Код не требуется.

0 голосов
/ 25 июня 2018

Это старая команда, которая больше не отображается в пользовательском интерфейсе Word по умолчанию: InsertDatabase. Вы найдете его в меню «Файл / Параметры / Лента» или «Панель быстрого доступа» в разделе «Все команды».

Вставляет поле с именем Database через набор диалоговых окон.

  1. Get Data - это то же самое, что вы видите в слиянии почты при выборе источника данных. При этом используется любой допустимый метод подключения (в настоящее время ODBC или OLE DB - последний по умолчанию) для привязки к источнику данных. В вашем случае это лист Excel. Если вы присвоили данным имя диапазона, оно также доступно для выбора.

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

  3. Insert Data, где можно выбрать записи. Это важно: активируйте флажок Insert Data as field. Это то, что сделает данные динамическими.

  4. OK для вставки данных / поля. Результат будет выглядеть примерно так: вы можете увидеть (и отредактировать), нажав Alt + F9, чтобы переключиться с результата поля на код поля. Это информация о соединении.

{DATABASE \ d "C: \ Users \ [Имя пользователя] \ Documents \ SampleChart.xlsx" \ c "Provider = Microsoft.ACE.OLEDB.12.0; ID пользователя = Admin; Данные Source = C: \ Users \ Синди Meister \ Documents \ SampleChart.xlsx; Mode = Read; Extended Свойства = \ "HDR = YES; IMEX = 1; \"; Jet OLEDB: Системная база данных = \ "\"; Jet OLEDB: путь в реестре = \ "\"; Jet OLEDB: тип ядра = 37; Jet OLEDB: база данных Режим блокировки = 0; Jet OLEDB: глобальный частичный объем операций = 2; Jet OLEDB: глобальный Массовые транзакции = 1; Jet OLEDB: новый пароль базы данных = \ "\"; Jet OLEDB: Создать системную базу данных = False; Jet OLEDB: Шифровать База данных = Ложь; Jet OLEDB: Не копировать локаль на Компакт = Ложь; Jet OLEDB: Компактный без восстановления реплик = False; Jet OLEDB: SFP = False; Jet OLEDB: поддержка сложных данных = False; Jet OLEDB: обход пользовательской информации Validation = False "\ s" SELECT * FROM ChartInfo "\ h}

Это поле не будет обновляться автоматически при изменении чего-либо в Excel, вы должны принудительно обновить его, нажав на него и нажав F9. Или вы можете использовать макрос для этого. Проще всего, если вы не хотите просто обновлять все поля в теле документа, было бы добавить в закладки таблицу, плюс абзац на каждом конце и использовать

ActiveDocument.Bookmarks("Database").Range.Fields.Update 
...