Discussion:
Add 0 before decimal point through VBA
(too old to reply)
Sudhir_Gawade
2012-06-05 04:54:57 UTC
Permalink
Hi,

In my MS Word document, there are about 50 pages. I need to add "0
where decimal value is in this format .25 or any Number. I need VB
code.

I have tried with below, but it is time consuming is there other way o
doing same.

Sub a()

With ActiveDocument
For i = 1 To .Words.Count

If .Words(i).Text = "." Then

If IsNumeric(.Words(i).Text & .Words(i + 1).Text) And .Words(i - 1).Tex
<> "0" Then

.Words(i).Text = "0" & .Words(i).Text
i = i + 2
End If
End If
Next
End With

End Sub

Thanks in advance

Regards,
Sudhir


--
Sudhir_Gawade
Stefan Blom
2012-06-06 11:17:23 UTC
Permalink
A wildcard search should do the trick. There might be more efficient
ways, but here's one attempt:

"Find what": ([!0-9])(.)([0-9])

"Replace with": 0\2\3

(Note that I have entered a space before the zero in the "Replace with"
box.)

Test it on a *copy* of your document.

Stefan Blom
Microsoft Word MVP
Hi,
In my MS Word document, there are about 50 pages. I need to add "0"
where decimal value is in this format .25 or any Number. I need VBA
code.
I have tried with below, but it is time consuming is there other way of
doing same.
Sub a()
With ActiveDocument
For i = 1 To .Words.Count
If .Words(i).Text = "." Then
If IsNumeric(.Words(i).Text & .Words(i + 1).Text) And .Words(i - 1).Text
<> "0" Then
.Words(i).Text = "0" & .Words(i).Text
i = i + 2
End If
End If
Next
End With
End Sub
Thanks in advance
Regards,
Sudhir.
Stefan Blom
2012-06-07 08:17:55 UTC
Permalink
Thinking about it, the character before the period is a space, so you
should be able to do it more easily as follows:

"Find what": ( )(.)([0-9])

"Replace with": 0\2\3

(Again, there is a space before the zero in "Replace with.")

Stefan Blom
Microsoft Word MVP
Post by Stefan Blom
A wildcard search should do the trick. There might be more efficient
"Find what": ([!0-9])(.)([0-9])
"Replace with": 0\2\3
(Note that I have entered a space before the zero in the "Replace with"
box.)
Test it on a *copy* of your document.
Stefan Blom
Microsoft Word MVP
Hi,
In my MS Word document, there are about 50 pages. I need to add "0"
where decimal value is in this format .25 or any Number. I need VBA
code.
I have tried with below, but it is time consuming is there other way of
doing same.
Sub a()
With ActiveDocument
For i = 1 To .Words.Count
If .Words(i).Text = "." Then
If IsNumeric(.Words(i).Text & .Words(i + 1).Text) And .Words(i - 1).Text
<> "0" Then
.Words(i).Text = "0" & .Words(i).Text
i = i + 2
End If
End If
Next
End With
End Sub
Thanks in advance
Regards,
Sudhir.
Loading...