![]() |
|
#1
|
|||
|
|||
|
I need some help with the below code. I would like to automate this macro to change numbers with the following format:
0001 to 1. 0002 to 2. 0750 to 750. Up to maybe 0999 Thanks!!!! Sub ConvertingNumbers() ' ' ConvertingNumbers Macro ' ' Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = "0001" .Replacement.Text = "1." .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = False .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll With Selection.Find .Text = "0002" .Replacement.Text = "2." .Forward = True .Wrap = wdFindContinue .Format = False .MatchCase = False .MatchWholeWord = False .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll End Sub |
|
#2
|
||||
|
||||
|
You don't need a macro. You can use a wildcard Find/Replace, where:
Find = ([!1-9])[0]{1,}([0-9]{1,}) Replace = \1\2 Of course, you could encode that in a macro like the one I provided yesterday.
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
|
#3
|
|||
|
|||
|
My preference would be to encode in a macro because I need it for approximately 60 documents that I'm editing.
Anyway, I tested but doesn't work. Would you please show me what I did wrong? Thanks in advance!! Cheers! Code:
Sub Demo2()
Application.ScreenUpdating = False
With ActiveDocument.Range
.InsertBefore " "
With .Find
.ClearFormatting
.Replacement.ClearFormatting
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchWildcards = True
.Text = ".([0-9]{1,3}.)"
.Replacement.Text = ". \1"
.Execute Replace:=wdReplaceAll
.Text = " ([a-e].)"
.Replacement.Text = "^p\1"
.Execute Replace:=wdReplaceAll
.Replacement.Style = "Strong"
.Text = " ([!1-9])[0]{1,}([0-9]{1,})"
.Execute Replace:=wdReplaceAll
End With
.Characters.First.Delete
End With
Application.ScreenUpdating = True
End Sub
Last edited by macropod; 03-30-2014 at 08:56 AM. Reason: Added code tags & formatting |
|
#4
|
||||
|
||||
|
Well, apart from the fact you deleted an existing expression in that macro, you added a space to the start of the new Find expression, omitted a new Replace expression, which means the preceding character would be deleted and a paragraph inserted in its place and, by putting it after the code that applies the 'Strong' Style, would turn the replaced output bold. Try:
Code:
Sub Demo()
Application.ScreenUpdating = False
With ActiveDocument.Range
With .Find
.ClearFormatting
.Replacement.ClearFormatting
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchWildcards = True
.Text = "([!1-9])[0]{1,}([0-9]{1,})"
.Replacement.Text = "\1\2"
.Execute Replace:=wdReplaceAll
End With
End With
Application.ScreenUpdating = True
End Sub
Code:
Sub Demo()
Application.ScreenUpdating = False
With ActiveDocument.Range
.InsertBefore " "
With .Find
.ClearFormatting
.Replacement.ClearFormatting
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchWildcards = True
.Text = "([!1-9])[0]{1,}([0-9]{1,})"
.Replacement.Text = "\1\2"
.Execute Replace:=wdReplaceAll
.Text = ".([0-9]{1,3}.)"
.Replacement.Text = ". \1"
.Execute Replace:=wdReplaceAll
.Text = " ([a-e].)"
.Replacement.Text = "^p\1"
.Execute Replace:=wdReplaceAll
.Replacement.Style = "Strong"
.Text = " ([0-9]{1,3}.)"
.Execute Replace:=wdReplaceAll
End With
.Characters.First.Delete
End With
Application.ScreenUpdating = True
End Sub
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
|
#5
|
|||
|
|||
|
The code is working as intented.
Thank you for your support. |
|
#6
|
|||
|
|||
|
Hello Macropod
Even when this thread has been solved, I would like to ask you for two things: 1. Would it be possible to modify the code so I could have more spaces between the questions--probably about six or seven spaces (between letter d and the next question)? 2. I was looking for the "Go Advanced" tab and couldn't find it.--I know, I know- I searched for but I'm not that lucky!! Thanks anyway for your support! |
|
#7
|
||||
|
||||
|
Quote:
Quote:
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
|
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Userform Code not quite right - help please | vbanovice | Word VBA | 1 | 09-29-2013 09:20 PM |
| outlook vba code help | HxG | Outlook | 0 | 09-20-2012 10:42 PM |
Where does my code go?
|
rbaldwin | Word VBA | 3 | 03-14-2012 02:31 PM |
| Help with VBA Code Modification | OTPM | Excel Programming | 0 | 09-16-2011 07:10 AM |
vbc code
|
rajpeter | Excel Programming | 2 | 09-13-2011 02:29 PM |