View Single Post
 
Old 01-10-2024, 08:17 AM
syl3786 syl3786 is offline Windows 10 Office 2019
Advanced Beginner
 
Join Date: Jan 2023
Posts: 97
syl3786 is on a distinguished road
Default

Quote:
Originally Posted by vivka View Post
Hi, syl3786! Or you can use:
Code:
Sub Repl_Digits_W__Wds_3()
'In selected paragraphs, replace the digits that start tabbed paras with wds.

Dim para As Paragraph
Dim dgt As range

Application.ScreenUpdating = False
    For Each para In selection.range.Paragraphs
'Search for only digits:
        If para.range.Characters(1) = Chr(9) And _
            para.range.Characters(2) Like "[0-9]" And _
            para.range.Characters(3) = Chr(32) Then
                Set dgt = para.range.Characters(2)
                Select Case dgt
                    Case "0"
                        dgt = "zero"
                    Case "1"
                        dgt = "one"
                    Case "2"
                        dgt = "two"
                    Case "3"
                        dgt = "three"
                    Case "4"
                        dgt = "four"
                    Case "5"
                        dgt = "five"
                    Case "6"
                        dgt = "six"
                    Case "7"
                        dgt = "seven"
                    Case "8"
                        dgt = "eight"
                    Case "9"
                        dgt = "nine"
                End Select
        End If
    Next para
Application.ScreenUpdating = True
End Sub
Thank you for your response. I appreciate your effort. However, I would like to bring to your attention that there seems to be an error "5941" when running the macro due to these three lines of code:

Code:
If para.range.Characters(1) = Chr(9) And _
 para.range.Characters(2) Like "[0-9]" And _
 para.range.Characters(3) = Chr(32) Then
I managed to resolve it by using vbTab instead of Chr(9) and by employing the use of case. Thank you for your attention to this matter.
Reply With Quote