![]() |
|
#21
|
|||
|
|||
|
Shelley Lou, vivka,
I have been following this thread with interest and rather enjoying its development. Thought I would chime in with a different approach. While this approach introduces code that will naturally take longer to run, if the documents are not too large it may not matter. Code:
Option Explicit
Private oRngNum As Range
Sub FormatManualNumbering()
Dim oRng As Range
Dim oPar As Paragraph
Application.ScreenUpdating = False
Set oRng = ActiveDocument.Range
oRng.InsertBefore vbCr
With oRng.Find
.ClearFormatting
.Replacement.ClearFormatting
.Forward = True
.Wrap = wdFindStop
.Format = False
.MatchWildcards = False
'Remove spaces starting paras:
.Text = "^p^w"
.Replacement.Text = "^p"
.Execute Replace:=wdReplaceAll
End With
oRng.Characters(1).Delete
For Each oPar In oRng.Paragraphs
If IsNumeric(oPar.Range.Characters(1)) Then
Set oRngNum = oPar.Range
oRngNum.Collapse wdCollapseStart
Do Until oRngNum.Characters.Last.Next Like "[A-Za-z]"
oRngNum.MoveEnd wdCharacter, 1
Loop
ProcessNum
End If
Next
Application.ScreenUpdating = True
lbl_Exit:
Exit Sub
End Sub
Sub ProcessNum()
Dim oRng As Range
Dim lngIndex As Long
Dim bAllNums As Boolean
bAllNums = True
Set oRng = oRngNum.Duplicate
oRng.Collapse wdCollapseEnd
Do Until IsNumeric(oRng.Characters.First.Previous)
oRng.MoveStart wdCharacter, -1
Loop
oRng.Text = "." & vbTab
oRngNum.End = oRng.Start
For lngIndex = 1 To oRngNum.Characters.Count
If Not IsNumeric(oRngNum.Characters(lngIndex)) Then
oRngNum.Characters(lngIndex) = "."
bAllNums = False
End If
Next
If Not bAllNums Then oRngNum.Characters.Last.Next.Delete
lbl_Exit:
Exit Sub
End Sub
Last edited by gmaxey; 08-15-2024 at 06:02 AM. |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
VBA insert period after manual numbering
|
Shelley Lou | Word VBA | 1 | 03-05-2023 03:45 AM |
VBA Remove manual numbering after Outline numbering
|
Shelley Lou | Word VBA | 2 | 08-04-2021 12:24 AM |
VBA converting manual numbering to auto numbering
|
Shelley Lou | Word VBA | 8 | 05-28-2021 01:08 AM |
Applying New Multi-Level List to Existing Document with Manual Numbering and Existing Styles
|
stanley | Word | 4 | 12-15-2020 10:59 AM |
| page numbering for manual | Bursal | Word | 1 | 07-29-2018 02:08 PM |