Уважаемые форумчане, доброго времени суток! Для объединения файлов word использую макрос следующего вида:
[vba]
Код
Sub Объединение_файлов() Dim avFiles, lr As Long Dim docAct As Document, docNow As Document
With Application.FileDialog(msoFileDialogFilePicker) .InitialFileName = "*.doc*" .AllowMultiSelect = True If .Show = False Then Exit Sub Set docAct = ActiveDocument For lr = 1 To .SelectedItems.Count Set docNow = Documents.Open(.SelectedItems(lr)) docNow.Range.Copy docAct.Range(docAct.Range.End - 1).Paste docAct.Range(docAct.Range.End - 1).InsertBreak Type:=wdSectionBreakNextPage docNow.Close 0 Next lr End With End Sub
[/vba]
Подскажите пожалуйста, как можно доработать макрос, чтобы он не ставил разделитель страниц в конце последнего объединяемого файла? Заранее спасибо.
Уважаемые форумчане, доброго времени суток! Для объединения файлов word использую макрос следующего вида:
[vba]
Код
Sub Объединение_файлов() Dim avFiles, lr As Long Dim docAct As Document, docNow As Document
With Application.FileDialog(msoFileDialogFilePicker) .InitialFileName = "*.doc*" .AllowMultiSelect = True If .Show = False Then Exit Sub Set docAct = ActiveDocument For lr = 1 To .SelectedItems.Count Set docNow = Documents.Open(.SelectedItems(lr)) docNow.Range.Copy docAct.Range(docAct.Range.End - 1).Paste docAct.Range(docAct.Range.End - 1).InsertBreak Type:=wdSectionBreakNextPage docNow.Close 0 Next lr End With End Sub
[/vba]
Подскажите пожалуйста, как можно доработать макрос, чтобы он не ставил разделитель страниц в конце последнего объединяемого файла? Заранее спасибо.maximich
Sub Объединение_файлов() Dim avFiles, lr As Long Dim docAct As Document, docNow As Document
With Application.FileDialog(msoFileDialogFilePicker) .InitialFileName = "*.doc*" .AllowMultiSelect = True If .Show = False Then Exit Sub If lr < .SelectedItems.Count Then docAct.Range(docAct.Range.End - 1).InsertBreak Type:=wdSectionBreakNextPage Set docAct = ActiveDocument For lr = 1 To .SelectedItems.Count Set docNow = Documents.Open(.SelectedItems(lr)) docNow.Range.Copy docAct.Range(docAct.Range.End - 1).Paste docAct.Range(docAct.Range.End - 1).InsertBreak Type:=wdSectionBreakNextPage docNow.Close 0 Next lr End With End Sub
[/vba]
Gustav, правильно ли я Вас понял?
[vba]
Код
Sub Объединение_файлов() Dim avFiles, lr As Long Dim docAct As Document, docNow As Document
With Application.FileDialog(msoFileDialogFilePicker) .InitialFileName = "*.doc*" .AllowMultiSelect = True If .Show = False Then Exit Sub If lr < .SelectedItems.Count Then docAct.Range(docAct.Range.End - 1).InsertBreak Type:=wdSectionBreakNextPage Set docAct = ActiveDocument For lr = 1 To .SelectedItems.Count Set docNow = Documents.Open(.SelectedItems(lr)) docNow.Range.Copy docAct.Range(docAct.Range.End - 1).Paste docAct.Range(docAct.Range.End - 1).InsertBreak Type:=wdSectionBreakNextPage docNow.Close 0 Next lr End With End Sub
Sub Объединение_файлов() Dim avFiles, lr As Long Dim docAct As Document, docNow As Document
With Application.FileDialog(msoFileDialogFilePicker) .InitialFileName = "*.doc*" .AllowMultiSelect = True If .Show = False Then Exit Sub Set docAct = ActiveDocument For lr = 1 To .SelectedItems.Count Set docNow = Documents.Open(.SelectedItems(lr)) docNow.Range.Copy docAct.Range(docAct.Range.End - 1).Paste
'docAct.Range(docAct.Range.End - 1).InsertBreak Type:=wdSectionBreakNextPage If lr < .SelectedItems.Count Then docAct.Range(docAct.Range.End - 1).InsertBreak Type:=wdSectionBreakNextPage
Sub Объединение_файлов() Dim avFiles, lr As Long Dim docAct As Document, docNow As Document
With Application.FileDialog(msoFileDialogFilePicker) .InitialFileName = "*.doc*" .AllowMultiSelect = True If .Show = False Then Exit Sub Set docAct = ActiveDocument For lr = 1 To .SelectedItems.Count Set docNow = Documents.Open(.SelectedItems(lr)) docNow.Range.Copy docAct.Range(docAct.Range.End - 1).Paste
'docAct.Range(docAct.Range.End - 1).InsertBreak Type:=wdSectionBreakNextPage If lr < .SelectedItems.Count Then docAct.Range(docAct.Range.End - 1).InsertBreak Type:=wdSectionBreakNextPage