Новичок в макросах Microsoft Office - PullRequest
0 голосов
/ 11 ноября 2009

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

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

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

Это для Office 2003 (или XP, я не уверен).

РЕДАКТИРОВАТЬ : Кажется, что есть много способов сделать это, поэтому было бы здорово, если бы кто-то перечислил плюсы и минусы каждого решения. Имейте в виду, что это будет сделано много раз, и после того, как вы запрограммируете / запишете / что угодно, это должно быть легко для кого-то, кто не является программистом.

Ответы [ 3 ]

1 голос
/ 12 ноября 2009

Хавьер,

Не удалось найти хороший учебник, но что-то вроде этого должно помочь вам начать:

Вы можете включить панель инструментов разработчика, если она недоступна в настройках Word. Затем нажмите кнопку Visual Basic и добавьте процедуру или функцию, которую можно вызывать из документа или из командной кнопки в пользовательском интерфейсе Word.

Пример, демонстрирующий некоторые супер базовые Интеграция с Excel:

Public Function GetValue()

    Dim myExcel As Excel.Application
    Dim myWorkbook As Excel.Workbook
    Dim myWorkSheet As Excel.Worksheet

    Set myExcel = CreateObject("Excel.Application")
    Set myWorkbook = myExcel.Workbooks.Open("c:\temp\myworkbook.xlsx")


    Set myWorkSheet = myWorkbook.Worksheets(1)

    Dim cellValue As String

    cellValue = myWorkSheet.Cells(1, 1).Value

    GetValue = cellValue

End Function

Для этого потребуется добавить ссылку на библиотеку объектов Excel (библиотеку типов) из IDE разработчика Excel.

0 голосов
/ 12 ноября 2009

Вы можете сделать это с помощью встроенного средства Word в Word. Здесь есть пошаговое руководство по использованию в Word 2003 здесь


edit: в дополнение к вопросу в комментариях, после настройки документа слияния, вы можете сохранить его вместе со ссылкой на источник данных. Это означает, что при повторном открытии документа пользователю просто нужно сказать «Да» на выбор данных для объединения.

Пользователь может (независимо) также выбрать отображение панели инструментов слияния. Нажатие на кнопку «Слияние с новым документом» на панели инструментов «Слияние» приведет к созданию слитых писем. Если панель инструментов не отображается, им нужно перейти Tools> Letters and Mailings> Mail Merge и использовать мастер для завершения задания

0 голосов
/ 11 ноября 2009

Вы можете загрузить свои таблицы Excel через VBA в ADODB и читать ADODB строка за строкой.

Как использовать ADO с данными Excel из Visual Basic или VBA

...