Показать сообщение отдельно
  #1  
Старый 29.04.2012, 22:28
binary binary вне форума
Прохожий
 
Регистрация: 24.03.2012
Сообщения: 16
Репутация: 10
По умолчанию Создание таблицы через WordApplication

Доброго времени суток, уважаемые форумчане. Понимаю, что тема избита, но нигде не могу найти ответа на мою проблему.
Встала необходимость экспортировать данные из базы в таблицу документа MS Word.
После записи макроса перенёс код в Делфи.
Код макроса следующий:
Код:
Sub Макрос2()
'
' Макрос2 Макрос
' Макрос записан 29.04.2012 Admin
'
    ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=2, NumColumns:= _
        5, DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:= _
        wdAutoFitContent
    With Selection.Tables(1)
        If .Style <> "Сетка таблицы" Then
            .Style = "Сетка таблицы"
        End If
        .ApplyStyleHeadingRows = True
        .ApplyStyleLastRow = True
        .ApplyStyleFirstColumn = True
        .ApplyStyleLastColumn = True
    End With
End Sub
Код в Делфи
Код:
procedure TForm1.Button1Click(Sender: TObject);
 var Range_: Range;
 NumRows,NumColumns,DefaultTableBehavior,AutoFitBehavior: OleVariant;
begin
      
        Range_:= WordApplication1.Selection.Range;
         NumRows :=20;
         NumColumns:= 5;
         DefaultTableBehavior:= wdWord9TableBehavior;
         AutoFitBehavior:=  wdAutoFitContent;

        WordApplication1.ConnectKind:=ckNewInstance;
WordApplication1.AutoConnect:= true;
WordApplication1.Documents.Add(EmptyParam,EmptyParam,EmptyParam,EmptyParam);

WordApplication1.ActiveDocument.Tables.Add(Range_,
         NumRows,NumColumns,DefaultTableBehavior,AutoFitBehavior);

***

 WordApplication1.Visible:= true;
   WordApplication1.Disconnect;
end;

При добавлеии таблицы выдаёт ошибку "Указанный диапазон взят не из правильного документа или цепочки надписей ".
Помогите решить проблему. Заранее благодарен.
Ответить с цитированием