atw: Re: Word macro help

  • From: "Geoffrey" <geoffrey@xxxxxxxxxxxxxx>
  • To: <austechwriter@xxxxxxxxxxxxx>
  • Date: Wed, 3 Dec 2014 16:43:46 +1100

Hi Howard

 

Is it possible with VBA to wrap selected text in some specified characters?

 

The background is this: I have a lot of mathematics that is partially 
Latex-compliant, but I need to insert the opening Latex characters (\() and the 
closing Latex characters {\)). For example, I have 3^x-2 in the manuscript and 
I want quickly change that to \(3^x-2\). It would be good if I could just 
select 3^x-2, press a key combination and get \(3^x-2\).

 

Is this do-able? What fee would you charge for designing the macro?

 

Cheers

 

Geoffrey Marnell

Principal Consultant

Abelard Consulting Pty Ltd 

P: 03 9596 3456

M: 0419 574 668

F: 03 9596 3625

Web:  <http://www.abelard.com.au/> www.abelard.com.au

 

From: austechwriter-bounce@xxxxxxxxxxxxx 
[mailto:austechwriter-bounce@xxxxxxxxxxxxx] On Behalf Of Howard Silcock
Sent: Wednesday, 3 December 2014 10:06 AM
To: austechwriter@xxxxxxxxxxxxx
Subject: atw: Re: Word macro help

 

Try replacing .Wrap = wdFindAsk with .Wrap = wdFindStop

 

​Howard

 

On 3 December 2014 at 09:23, Geoffrey <geoffrey@xxxxxxxxxxxxxx> wrote:

Hi austechies

 

I’m stuck with a Word macro. All I want to do is have = replaced by &amp;= in a 
selection of text. This is the code that the record macro command generates:

 

Sub equals()

'

' equals Macro

'

'

    With Selection.Find

        .ClearFormatting

        .Replacement.ClearFormatting

        .Text = "="

        .Replacement.Text = "&amp;="

        .Forward = True

        .Wrap = wdFindAsk

        .Format = False

        .MatchCase = False

        .MatchWholeWord = False

        .MatchWildcards = False

        .Execute Replace:=wdReplaceAll

End With

End Sub

 

The problem is that this macro replaces = with &amp;= throughout the entire 
rest of the document, not just in the text selected. That’s not what I want.

 

Any ideas?

 

 

Geoffrey Marnell

Principal Consultant

Abelard Consulting Pty Ltd 

P: 03 9596 3456

M: 0419 574 668

F: 03 9596 3625

Web:  <http://www.abelard.com.au/> www.abelard.com.au

 

 

Other related posts: