Объединить несколько Word-файлов (OLE)

admigator

Active Member
20.12.2010
40
0
#1
Всем привет.
Работаю с Word не так давно.
Задача - с нескольких документов выгрузить прикрепленные OLE файлы Word
и потом обьеденить их в один для печати.
Выгрузка получилась.
После выгрузки пробую создать новый документ и обьеденить в нем все с диска.
Код:
	Set oleobject = doc.CreateObject("OLEObject",note.~$OLEObjProgID(0),"") 
Call oleobject.Range().InsertFile("D:\Lotus\Notes\Data\export\1.doc")
Call oleobject.Range().InsertFile("D:\Lotus\Notes\Data\export\2.doc")
Call oleobject.Range().InsertFile("D:\Lotus\Notes\Data\export\3.doc")
После открытия Word в документе "моргают" поочередно все файлы и остается только последний.
Подскажите плз. как правильно сделать.
 

admigator

Active Member
20.12.2010
40
0
#2
Сам пошутил, сам посмеялся :)
Получилось методом "ТЫКА"
Кому надо - пользуйтесь

Код:
Sub Click(Source As Button)
On Error Goto ErrorHandler
On Error 208 Goto NewObject	
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Set uidoc = ws.currentdocument
Dim doc As NotesDocument
Set doc = uidoc.Document
Set Wordobj = GetObject("", "Word.Application")
Wordobj.Visible = True
Wordobj.Activate
Wordobj.WindowState = 1 

Wordobj.Documents.Add("")
Wordobj.Documents(1).Paragraphs.Last.Range().InsertFile("D:\Lotus\Notes\Data\export\1.doc")	
Wordobj.Documents(1).Paragraphs.Last.Range().InsertFile("D:\Lotus\Notes\Data\export\2.doc")	
Wordobj.Documents(1).Paragraphs.Last.Range().InsertFile("D:\Lotus\Notes\Data\export\3.doc")

Exit Sub
NewObject:
Set Wordobj = CreateObject("Word.Application")
Resume Next
Exit Sub
ErrorHandler:
Msgbox "Error " & Err() & ": " & Error()
Exit Sub
End Sub
 

VladSh

начинающий
Lotus team
11.12.2009
1 248
2
#3
Сам пошутил, сам посмеялся :)
Работа через OLE, тем более с продуктами M$ быстро теряет популярность, потихоньку все от этого уходят. Да и тем по OLE навалом здесь. Поэтому никто и не отвечал (просто мало кому надо).