Предоставление оперативных данных вашим читателямУпакуйте необходимую информацию исходного документа в PDF-издание.Читатели копируют данные из PDF-документов, чтобы использовать их в собственных документах или электронных таблицах. Таблицы обычно содержат самые ценные данные, но их сложнее всего извлекать из PDF-документов. Предоставьте читателям нужную информацию, автоматически извлекая таблицы из исходного документа, конвертируя их в электронную таблицу Excel, а затем прикрепляя к своему PDF-документу.

В Microsoft Word используется макрокоманда для копирования таблицы документа в новый документ. Создайте ее следующим образом.

Командой меню Tools\Macro\Macros (Сервис\Макрос\Макросы) откройте диалоговое окно Macros. Введите CopyTablesIntoNewDocument в поле Macro name:, установите значение Macros in: в Normal.dot и нажмите Create (Создать).

Откроется диалоговое окно, в котором нужно ввести код макрокоманды. Если уже имеются две строки кода: Sub CopyTablesIntoNewDocument() и End Sub, то их не следует дублировать.

Загрузите с сайта http://www.pd/hacks.com/copytables/ следующий код:

Sub CopyTablesIntoNewDocument()
‘ version 1.0
‘ http://www.pdfhacks.com/copytables/
Dim SrcDoc, NewDoc As Document Dim SrcDocTableRange As Range
Set SrcDoc = ActiveDocument If SrcDoc.Tables.Count <> 0 Then
Set NewDoc = Documents.Add(DocumentType:=wdNewBlankDocument)
Set NewDocRange = NewDoc.Range
Dim PrevPara As Range
Dim NextPara As Range
Dim NextEnd As Long
NextEnd = 0
For Each SrcDocTable In SrcDoc.Tables
Set SrcDocTableRange = SrcDocTable.Range
‘вывести предыдущий параграф?
Set PrevPara = SrcDocTableRange.Previous(wdParagraph, 1)
If PrevPara Is Nothing Or PrevPara.Start < NextEnd Then
Else
Set PPWords = PrevPara.Words
If PPWords.Count > 1
Then ‘yes
NewDocRange.Start = NewDocRange.
End NewDocRange.InsertParagraphBefore
NewDocRange.Start = NewDocRange.
End NewDocRange.InsertParagraphBefore
NewDocRange.FormattedText = PrevPara.FormattedText
End If
End If
‘вывод таблицы
NewDocRange.Start = NewDocRange.End
NewDocRange.FormattedText = SrcDocTableRange.FormattedText
‘вывести следующий параграф?
Set NextPara = SrcDocTableRange.Next(wdParagraph, 1)
If NextPara Is Nothing Then
Else
Set PPWords = NextPara.words
NextEnd = NextPara.End
If PPWords.Count > 1
Then ‘yes
NewDocRange. Start = NewDocRange.End
NewDocRange.InsertParagraphBefore NewDocRange.FormattedText= NextPara.FormattedText
End If
End If
Next SrcDocTable
End If
End Sub

Выполните эту макрокоманду в редакторе Word, открыв командой меню Tools\Macro\Macros (Сервис\Макрос\Макросы) диалоговое окно Macros, выбрав Copy Tables Into New Document (Копировать таблицу в новый документ) и нажав Run (Выполнить). Откроется новый документ, содержащий все таблицы из текущего документа. Он будет также включать абзацы, стоящие до и после каждой таблицы. Эта функция добавлена, чтобы помочь читателям найти нужную им таблицу. Измените код макрокоманды в соответствии со своими настройками.

Создание HTML или Ехсе1-документа из документа, содержащего таблицы

Используйте метод, описанный в разделе «Создание HTML-издания с помощью редактора Word», чтобы конвертировать документ в формат HTML. Создайте HTML-файл подобно электронной таблице Excel, изменяя расширение имени файла с html на xls. Excel прекрасно открывает данные этим способом.

Кроме того, что программа Excel открывает HTML-файлы, замаскированные под XLS-файлы, она конвертирует интернет-сайты в электронные таблицы. В Excel командой меню File\Open (Файл\Открыть) откройте диалоговое окно Open, введите сетевой адрес в поле File name: и щелкните Open (Открыть).

Прикрепление таблиц к PDF-документу

См. раздел «Добавление вложений в PDF-документ» для детального описания процедуры прикрепления вложений с помощью контекстного меню.