Paragraphs и Tables в MSWord

Программирование на Visual Basic for Applications
Max_Fin
Начинающий
Начинающий
 
Сообщения: 8
Зарегистрирован: 03.02.2005 (Чт) 15:20

Paragraphs и Tables в MSWord

Сообщение Max_Fin » 03.02.2005 (Чт) 15:28

Проблема заключается в следующем:
Задачка тревильная. Ищу по специфическим словам параграф N, затем параграф M.
Часть, заключенную между этими параграфами необходимо скопировать и вставить в другой докуент.
Копирование идет в цикле с N по M параграф, все отлично до определенного момента как только всречается таблица, каждая ее ячейка рассматривается как отдельный параграф, соответсвенно при вставке, все ячейки таблицы раполагаются в отдельных строках.
Как этого избежать?
Есть ли объект в Document, который объединял все возможные объекты документа (и параграфы, и фреймы, и таблицы....)?

SergeySV2
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 06.01.2005 (Чт) 22:06

Re: Paragraphs и Tables в MSWord

Сообщение SergeySV2 » 03.02.2005 (Чт) 16:15

Max_Fin писал(а):, каждая ее ячейка рассматривается как отдельный параграф, соответсвенно при вставке, все ячейки таблицы раполагаются в отдельных строках.


Непонятно, как как она вставляется? :?
тебе нужно просто вставить один текст с форматированием? без табличных линий с разделением на ячейки?

Max_Fin
Начинающий
Начинающий
 
Сообщения: 8
Зарегистрирован: 03.02.2005 (Чт) 15:20

Re: Paragraphs и Tables в MSWord

Сообщение Max_Fin » 03.02.2005 (Чт) 16:18

SergeySV2 писал(а):Непонятно, как как она вставляется? :?
тебе нужно просто вставить один текст с форматированием? без табличных линий с разделением на ячейки?


Вот например код (в данном случае копируются все параграфы)
Код: Выделить всё
Dim P As Paragraph
Dim D As Document
Set D = Documents.Item(DocName)

For I = 1 To ActiveDocument.Paragraphs.Count
    Set P = ActiveDocument.Paragraphs.Item(I)
    P.Range.Select
    ActiveDocument.ActiveWindow.Selection.Copy
    D.ActiveWindow.Selection.Paste
Next I


необходимо сохранить и форматирование и саму таблицу

Max_Fin
Начинающий
Начинающий
 
Сообщения: 8
Зарегистрирован: 03.02.2005 (Чт) 15:20

Вопрос снят

Сообщение Max_Fin » 03.02.2005 (Чт) 18:43

Код: Выделить всё
Set aRange = ActiveDocument.Range( _
    Start:=ActiveDocument.Paragraphs(N).Range.Start, _
    End:=ActiveDocument.Paragraphs(M).Range.End)
aRange.Select
ActiveDocument.ActiveWindow.Selection.Copy
D.ActiveWindow.Selection.Paste


вот блин, столько времени угрохал!


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3

    TopList