Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: Как с Exсel открыть Word и скопировать в него д... Добавлено: 01.04.04 20:30  

Автор вопроса:  Poor_Yorick

Если можно, то рабочий код, пожалуйста.

Ответить

  Ответы Всего ответов: 1  

Номер ответа: 1
Автор ответа:
 dedtolya



Вопросов: 0
Ответов: 39
 Профиль | | #1 Добавлено: 09.04.04 22:53

Sub CopyWorksheetsToWord()

' требуется ссылкап Word Object library:

Dim wdApp As Word.Application, wdDoc As Word.Document, ws As Worksheet

Application.ScreenUpdating = False

Application.StatusBar = "Создается новый документ..."

Set wdApp = New Word.Application

Set wdDoc = wdApp.Documents.Add

For Each ws In ActiveWorkbook.Worksheets

Application.StatusBar = "Копируются данные из " & ws.Name & "..."

ws.UsedRange.Copy

wdDoc.Paragraphs(wdDoc.Paragraphs.Count).Range.InsertParagraphAfter

wdDoc.Paragraphs(wdDoc.Paragraphs.Count).Range.Paste

Application.CutCopyMode = False

wdDoc.Paragraphs(wdDoc.Paragraphs.Count).Range.InsertParagraphAfter

' Вставляет разрыв Новая страница

If Not ws.Name = Worksheets(Worksheets.Count).Name Then

With wdDoc.Paragraphs(wdDoc.Paragraphs.Count).Range

.InsertParagraphBefore

.Collapse Direction:=wdCollapseEnd

.InsertBreak Type:=wdPageBreak

End With

End If

Next ws

Set ws = Nothing

Application.StatusBar = "Очистка..."

With wdApp.ActiveWindow

If .View.SplitSpecial = wdPaneNone Then

.ActivePane.View.Type = wdNormalView

Else

.View.Type = wdNormalView

End If

End With

Set wdDoc = Nothing

wdApp.Visible = True

Set wdApp = Nothing

Application.StatusBar = False

End Sub

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам