Curly quotes to French Quotes

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

How can I replace all curly quotes with French (dagger or duck's feet) quotes?
When I use the unicode characters (eg 00AB) in "Replace," it simply
replaces the curly quotes with curly quotes again. I can enter the French
quotes manually, but this is laborious.
 
You know, I thought that if the text were tagged as French, then both a
replace operation and a Format | AutoFormat would switch to the correct
quotation marks, assuming the AutoFormat options were set up right. But
this is not working on my machine either, although if I type new marks, it
does. Perhaps someone else will know.

The semi-manual alternative--two Find and Replaces.

#1) Find opening quotation ³, typed via alt-[. Replace with opening French
quotation mark, copied into Replace box using control-C or typed via alt-\.

#2) Find closing quotation ², typed via alt-shift-[ . Replace with closing
French quotation mark, copied into Replace box using control-C or typed via
alt-shift-\.

This should not be so laborious.

I always recommend making a COPY before doing a Replace All.
 
Setting the language to French and running autoformat with the smart quote
option works for me. However, it won't work if the quotes are already
converted from straight quotes to smart quotes in another language. If that
was the case you would have to replace them with plain quotes first. The
following macro will do that for English smart quotes:

Sub ReplaceList()
Dim vFindText As Variant
Dim vReplText As Variant
Dim i As Long
vFindText = Array(Chr(145), Chr(146), Chr(147), Chr(148))
vReplText = Array(Chr(39), Chr(39), Chr(34), Chr(34))
With Selection.Find
.Forward = True
.Wrap = wdFindContinue
.MatchWholeWord = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
.Format = True
.MatchCase = True
For i = LBound(vFindText) To UBound(vFindText)
.Text = vFindText(i)
.Replacement.Text = vReplText(i)
.Execute replace:=wdReplaceAll
Next i
End With
End Sub

Though if taking the macro approach, you could simply insert the required
characters in the vReplText array.
By adding all possible combinations to find and replace, you can cater for
any eventuality.


--
<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
Graham Mayor - Word MVP

My web site www.gmayor.com

<>>< ><<> ><<> <>>< ><<> <>>< <>><<>

Daiya said:
You know, I thought that if the text were tagged as French, then both
a replace operation and a Format | AutoFormat would switch to the
correct quotation marks, assuming the AutoFormat options were set up
right. But this is not working on my machine either, although if I
type new marks, it does. Perhaps someone else will know.

The semi-manual alternative--two Find and Replaces.

#1) Find opening quotation ³, typed via alt-[. Replace with opening
French quotation mark, copied into Replace box using control-C or
typed via alt-\.

#2) Find closing quotation ², typed via alt-shift-[ . Replace with
closing French quotation mark, copied into Replace box using
control-C or typed via alt-shift-\.

This should not be so laborious.

I always recommend making a COPY before doing a Replace All.


How can I replace all curly quotes with French (dagger or duck's
feet) quotes? When I use the unicode characters (eg 00AB) in
"Replace," it simply
replaces the curly quotes with curly quotes again. I can enter the
French quotes manually, but this is laborious.
 
Thanks. This does the trick. The key is the warning in the second sentence:
start with straight quotes in English. (I'm also glad to have the macro.)

Graham Mayor said:
Setting the language to French and running autoformat with the smart quote
option works for me. However, it won't work if the quotes are already
converted from straight quotes to smart quotes in another language. If that
was the case you would have to replace them with plain quotes first. The
following macro will do that for English smart quotes:

Sub ReplaceList()
Dim vFindText As Variant
Dim vReplText As Variant
Dim i As Long
vFindText = Array(Chr(145), Chr(146), Chr(147), Chr(148))
vReplText = Array(Chr(39), Chr(39), Chr(34), Chr(34))
With Selection.Find
.Forward = True
.Wrap = wdFindContinue
.MatchWholeWord = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
.Format = True
.MatchCase = True
For i = LBound(vFindText) To UBound(vFindText)
.Text = vFindText(i)
.Replacement.Text = vReplText(i)
.Execute replace:=wdReplaceAll
Next i
End With
End Sub

Though if taking the macro approach, you could simply insert the required
characters in the vReplText array.
By adding all possible combinations to find and replace, you can cater for
any eventuality.


--
<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
Graham Mayor - Word MVP

My web site www.gmayor.com

<>>< ><<> ><<> <>>< ><<> <>>< <>><<>

Daiya said:
You know, I thought that if the text were tagged as French, then both
a replace operation and a Format | AutoFormat would switch to the
correct quotation marks, assuming the AutoFormat options were set up
right. But this is not working on my machine either, although if I
type new marks, it does. Perhaps someone else will know.

The semi-manual alternative--two Find and Replaces.

#1) Find opening quotation ³, typed via alt-[. Replace with opening
French quotation mark, copied into Replace box using control-C or
typed via alt-\.

#2) Find closing quotation ², typed via alt-shift-[ . Replace with
closing French quotation mark, copied into Replace box using
control-C or typed via alt-shift-\.

This should not be so laborious.

I always recommend making a COPY before doing a Replace All.


How can I replace all curly quotes with French (dagger or duck's
feet) quotes? When I use the unicode characters (eg 00AB) in
"Replace," it simply
replaces the curly quotes with curly quotes again. I can enter the
French quotes manually, but this is laborious.
 
Back
Top