![]() |
#4
|
|||
|
|||
![]()
There are better ways than the simple fix above.
For one, if your document has a thousand or say a million paragraphs, it would be inefficient to evaluate each one to see if it was the last one. So, since you now know that there is no next paragraph following the last paragraph of a document you could use an error handler: Code:
Sub A() Dim oPar As Paragraph For Each oPar In ActiveDocument.Paragraphs 'If oPar.Range.ParagraphFormat.Alignment = wdAlignParagraphRight Then oPar.Style = "Body Text" On Error GoTo Err_Handler oPar.Next.Style = "Body Text" 'End If Next oPar lbl_Exit: Exit Sub Err_Handler: If Err.Number = 91 Then If oPar.Range.End = ActiveDocument.Range.End Then 'You know this error will occur so it is not an issue Else MsgBox Err.Number & " " & Err.Description End If Else MsgBox Err.Number & " " & Err.Description End If Resume lbl_Exit End Sub or you could adjust your processing range so you never reach the last paragraph: Code:
Sub B() Dim oRng As Range Dim oPar As Paragraph Set oRng = ActiveDocument.Range oRng.End = ActiveDocument.Range.Paragraphs.Last.Previous.Range.End For Each oPar In oRng.Paragraphs If oPar.Range.ParagraphFormat.Alignment = wdAlignParagraphRight Then oPar.Style = "Body Text" oPar.Next.Style = "Body Text" End If Next oPar lbl_Exit: Exit Sub End Sub |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
How to apply a style to a group of words inside a paragraph? | saint—112 | Word | 3 | 09-07-2022 09:55 PM |
Apply table style | shahid.majeed | Word Tables | 0 | 10-02-2019 01:25 AM |
My style keeps changing, can't get saved style to apply | Meenie50 | Word | 7 | 07-20-2017 03:47 PM |
Paragraph space before - can styles apply it intelligently? | timpani | Word | 7 | 10-23-2012 04:08 PM |
Character style stripped while applying paragraph style | sams_gates | Word | 0 | 08-29-2009 02:03 AM |