Go Premium for a chance to win a PS4. Enter to Win

x
?
Solved

Check whether section breaks exist

Posted on 2010-11-17
2
Medium Priority
?
577 Views
Last Modified: 2012-06-21
Dear Experts:

I would like a macro to check the following on the current multipage document:

Check whether ...
... at the end of page 1 a section break exists (either section break 'new page' or section break 'even page').
If none of these type of section breaks exists on page 1 the macro is to say so in a MsgBox and is to exit

If such a section break exists on page 1 the macro is to go on and check whether ...
... at the end of the penultimate page an 'even page' or a 'new page' section break exists.
If neither of these section breaks exist on the penultimate page the macro is to say so in a MsgBox and is to exit.

I have attached a sample for your convenience.

Thank you very much in advance for your professinal help.

Regards, Andreas  SectionBreaks-Macro.docx SectionBreaks-Macro.docx
0
Comment
Question by:AndreasHermle
2 Comments
 
LVL 76

Accepted Solution

by:
GrahamSkan earned 2000 total points
ID: 34163395
Hi Andreas.

That is a bit trickier than it looks at first sight - see the comment.
Sub CheckSectionStarts()
    Dim bFirst As Boolean
    Dim bLast As Boolean
    
    Selection.GoTo wdGoToPage, wdGoToAbsolute, 2
    If Selection.Sections(1).Index = 2 Then
        Select Case ActiveDocument.Sections(2).PageSetup.SectionStart
            Case wdSectionEvenPage, wdSectionNewPage
                    bFirst = True
            Case Else
        End Select
    End If
    
    If bFirst Then
        Selection.GoTo wdGoToPage, wdGoToAbsolute, Selection.Information(wdNumberOfPagesInDocument) - 1
        'next line checks that penultimate page is not an empty page created by a break on the previous page
        If Selection.Information(wdActiveEndPageNumber) = Selection.Information(wdNumberOfPagesInDocument) - 1 Then
            Select Case ActiveDocument.Sections.Last.PageSetup.SectionStart
                Case wdSectionEvenPage, wdSectionNewPage
                        bLast = True
                Case Else
            End Select
        End If
    End If
    
    If bFirst Then
        If Not bLast Then
            MsgBox "The penultimate page does not end with a New or an Even Page section break"
        End If
    Else
        MsgBox "Page 1 does not end with a New or an Even Page section break"
    End If
End Sub

Open in new window

0
 

Author Closing Comment

by:AndreasHermle
ID: 34164810
Dear Graham,

it sure looks complicated. Thank you very much for your superb help. Exactly as I wanted it. I works just great!

Regards, Andreas
0

Featured Post

New feature and membership benefit!

New feature! Upgrade and increase expert visibility of your issues with Priority Questions.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes how to use the Send to Mail Recipient command. The instructions apply generally to Office 2007 and later versions, but Microsoft® Word 2013 was used for the specific steps and figures.  What is Send to Mail Recipient? Send…
Using Word 2013, I was experiencing some incredible lag when typing.  Here's what worked for me....
This video shows and describes the main difference between both orientations in Microsoft Word. Viewers will understand when to use each orientation and how to get the most out of them.
This video walks the viewer through the process of creating Hyperlinks for the web and other documents. Select the "Insert" tab: Click "Hyperlink":  Type "http://" followed by a web address to reference a website or navigate to a document to ref…

824 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question