View Single Post
 
Old 05-27-2021, 09:39 AM
Shelley Lou Shelley Lou is offline Windows 10 Office 2016
Expert
 
Join Date: Dec 2020
Posts: 259
Shelley Lou is on a distinguished road
Default VBA convert manual numbering to auto numbering in table

Hi, if anyone can help, I'm looking to add a restart number after each loop. Currently only Definition Level 2-4 restarts but Definition Level 1 just carries on the alphabet. How can I get it restart back to (a) for each definition that has this type of numbering. Thanks


Code:
Sub DPU_ApplyHeadingStylesTable()
Application.ScreenUpdating = False
Dim r As Long, i As Long
With ActiveDocument.Tables(1)
  For r = 1 To .Rows.Count
    With .Cell(r, 2).Range
      If .Characters.First <> "(" Then
        .Style = "DefText"
      Else
        i = Asc(Split(Split(.Text, "(")(1), ")")(0))
        Select Case i
          Case 97 To 104, 106 To 117, 119, 121 To 122: .Style = "Definition Level 1" 'LowercaseLetter
          Case 105, 118, 120: .Style = "Definition Level 2" 'LowercaseRoman
          Case 65 To 90: .Style = "Definition Level 3" 'UppercaseLetter
          Case 48 To 57: .Style = "Definition Level 4" 'Arabic
          
        End Select
        .Collapse wdCollapseStart
        .MoveEndUntil " "
        .End = .End + 1
        .Delete
      End If
    End With
  Next
End With
Application.ScreenUpdating = True
End Sub

Last edited by Shelley Lou; 05-27-2021 at 12:54 PM. Reason: Further info added
Reply With Quote