#1   Report Post  
KirstieA
 
Posts: n/a
Default Split document

Hi all,

I have a 300 page document that i want to save in 100 3 page documents, so
every 3 pages is a separate file.

I have the following macro that does it for each individual page but don't
know how to change it for every 3 pages.

--------------------------------------------------------

Sub SplitByPage()

Dim mask As String
Letters = ActiveDocument.Bookmarks("\page").Range
mask = "ddMMyy"

Selection.HomeKey Unit:=wdStory
Counter = 1
While Counter Letters
Application.ScreenUpdating = False
sName = "LA Notification - Appointment of Carer"
Docname = "C:\My Documents\Test\Merge\" _
& sName & " " & LTrim$(Str$(Counter))
On Error GoTo oops:
ActiveDocument.Bookmarks("\page").Range.Cut
Documents.Add
With Selection
.Paste
.EndKey Unit:=wdStory
.MoveLeft Unit:=wdCharacter, Count:=1
.Delete Unit:=wdCharacter, Count:=1
End With
ActiveDocument.SaveAs FileName:=Docname, _
FileFormat:=wdFormatDocument
ActiveWindow.Close
Counter = Counter + 1
Application.ScreenUpdating = True
Wend
oops:
End Sub

--------------------------------------------

Can anyone help??

Kirstie


  #2   Report Post  
Doug Robbins - Word MVP
 
Posts: n/a
Default Split document

The following, run when the 300 page document is the activedocument should
do what you want:

Dim i As Long, j As Long, Source As Document, Target As Document, myrange As
Range
Set Source = ActiveDocument
Selection.HomeKey Unit:=wdStory
For i = 1 To 100
Set Target = Documents.Add
Source.Activate
j = 1
For j = 1 To 3
Set myrange = Selection.Bookmarks("\page").Range
Target.Range.InsertAfter myrange
myrange.Delete
Next j
Target.SaveAs "C:\test\Document" & i
Target.Close
Next i

If however it happens that each of the 3 pages in the 300 page document are
separated by a Section break, as happens when a formletter type mail merge
is executed to a new document, then you could use:

Dim i As Long, Source as Document, Target as Document, Letter as Range
Set Source = ActiveDocument
For i = 1 to Source.Sections.Count
Set Letter = Source.Sections(i).Range
Letter.End=Letter.End-1
Set Target = Documents.Add
Target.Range=Letter
Target.SaveAs FileName:="Letter" & i
Target.Close
Next i


--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP

"KirstieA" (no spam) wrote in message
...
Hi all,

I have a 300 page document that i want to save in 100 3 page documents, so
every 3 pages is a separate file.

I have the following macro that does it for each individual page but don't
know how to change it for every 3 pages.

--------------------------------------------------------

Sub SplitByPage()

Dim mask As String
Letters = ActiveDocument.Bookmarks("\page").Range
mask = "ddMMyy"

Selection.HomeKey Unit:=wdStory
Counter = 1
While Counter Letters
Application.ScreenUpdating = False
sName = "LA Notification - Appointment of Carer"
Docname = "C:\My Documents\Test\Merge\" _
& sName & " " & LTrim$(Str$(Counter))
On Error GoTo oops:
ActiveDocument.Bookmarks("\page").Range.Cut
Documents.Add
With Selection
.Paste
.EndKey Unit:=wdStory
.MoveLeft Unit:=wdCharacter, Count:=1
.Delete Unit:=wdCharacter, Count:=1
End With
ActiveDocument.SaveAs FileName:=Docname, _
FileFormat:=wdFormatDocument
ActiveWindow.Close
Counter = Counter + 1
Application.ScreenUpdating = True
Wend
oops:
End Sub

--------------------------------------------

Can anyone help??

Kirstie



Reply
Thread Tools
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Split a mail merge document into individual documents leedelee Mailmerge 29 April 10th 23 08:29 PM
Can you save individual document pages as seperate word files? John Calligy Mailmerge 2 April 12th 05 09:14 AM
See the document map when the document is split in two panes. Pedro MarĂ­n Fernandes Microsoft Word Help 4 March 23rd 05 06:39 PM
Section of Word Document is missing SKS Formatting Long Documents 0 February 28th 05 03:43 PM
Newbie document question please Dudley Henriques New Users 4 January 9th 05 08:38 PM


All times are GMT +1. The time now is 04:55 PM.

Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 Microsoft Office Word Forum - WordBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Word"