Home |
Search |
Today's Posts |
#1
![]() |
|||
|
|||
![]()
I'm getting close in my research, but can't yet find a way to:
Find for example: (c.1949) and Replace with (c.1949) Where the 'c' only is italicized. Once I get the code for this, I'll be able to adapt to other and more complex scenarios, I hope. |
#2
![]() |
|||
|
|||
![]()
mmmm...
That didn't quite come out the way I wanted it. It was supposed to only show the 'c' in italics and the rest in not-italics. |
#3
![]() |
|||
|
|||
![]()
OK, Found it! With many thanks to Graham Mayor...
I amended some code from his website: Sub DateAbbrevItalicize() With Selection .HomeKey wdStory With .Find .ClearFormatting .Replacement.ClearFormatting Do While .Execute(findText:="(c.", _ MatchWildcards:=False, _ Wrap:=wdFindStop, _ Forward:=True) = True 'Do what you want with the found text (Selection.Range) 'In this case format the second character as subscripted Selection.Range.Characters(2).Font.Italic = True ' Selection.Range.Characters(2).Font.Subscript = True Loop 'and look for the next match End With End With End Sub |
#4
![]() |
|||
|
|||
![]()
OK, I found what I was looking for - with many thanks to Graham Mayor.
I have amended some code on his website and done the following: Sub DateAbbrevItalicize() With Selection .HomeKey wdStory With .Find .ClearFormatting .Replacement.ClearFormatting Do While .Execute(findText:="(c.", _ MatchWildcards:=False, _ Wrap:=wdFindStop, _ Forward:=True) = True 'Do what you want with the found text (Selection.Range) 'In this case format the second character as italicized Selection.Range.Characters(2).Font.Italic = True Loop 'and look for the next match End With End With End Sub |
#5
![]()
Posted to microsoft.public.word.docmanagement
|
|||
|
|||
![]()
You could Find the string
(c. and Replace it with the contents of the Clipboard ^c after you put on the clipboard (c. with the c italicized. (Assuming the dash at the end isn't part of what you want inserted. If it is, then simply search for a longer string and replace it with a longer string.) On Mar 14, 2:36*am, Jedumi wrote: I'm getting close in my research, but can't yet find a way to: Find for example: (c.1949) and Replace with (-c-.1949)-- Where the 'c' only is italicized. Once I get the code for this, I'll be able to adapt to other and more complex scenarios, I hope. |
#6
![]()
Posted to microsoft.public.word.docmanagement
|
|||
|
|||
![]()
On 2012-03-14, Jedumi wrote:
I'm getting close in my research, but can't yet find a way to: Find for example: (c.1949) and Replace with (-c-.1949)-- Where the 'c' only is italicized. Once I get the code for this, I'll be able to adapt to other and more complex scenarios, I hope. You can turn on wildcards and use some more advanced regular expression operators in both the Find What and Replace With fields. For example in the Find What, you could use \((c). ([0-9]{4})\) and in the Replace With field, you could use (-\1-.\2)-- That would perform the desired replacement in your example. Here's a breakdown of what the expressions are doing: \( is the opening paren. It must be preceded by a backslash so that the Find-Replace tool sees it as a literal paren. (c) captures the 'c' so that it can be referenced in the Replace With expression ([0-9]{4}) Searches for any single digit in the class '0-9' that is repeated 4 times. This grouping is also captured with parentheses so that it can be referenced in the Replace With expression. \) Ssearches for a literal closing paren. In the Replace With expression: ( inserts a parenthesis \1 inserts the first captured group (the '(c)' in the Find What expression). \2 inserts the second captured group (the '([0-9]{4})' in the Find What expression). For more info, look he http://www.bokorlang.com/journal/15msw.htm and he https://office.microsoft.com/en-us/w...102350661.aspx -- Best of all is never to have been born. Second best is to die soon. |
#7
![]()
Posted to microsoft.public.word.docmanagement
|
|||
|
|||
![]()
On Mar 14, 12:20*pm, Paul wrote:
On 2012-03-14, Jedumi wrote: I'm getting close in my research, but can't yet find a way to: Find for example: (c.1949) and Replace with (-c-.1949)-- Where the 'c' only is italicized. Once I get the code for this, I'll be able to adapt to other and more complex scenarios, I hope. You can turn on wildcards and use some more advanced regular expression operators in both the Find What and Replace With fields. For example in the Find What, you could use \((c). ([0-9]{4})\) and in the Replace With field, you could use (-\1-.\2)-- He doesn't want hyphens around the c, he wants the c to be italic. (The dash after the date was probably part of the metadiscussion, not what he wants to insert -- what function would it perform?) That would perform the desired replacement in your example. Here's a breakdown of what the expressions are doing: \( is the opening paren. It must be preceded by a backslash so that the Find-Replace tool sees it as a literal paren. (c) captures the 'c' so that it can be referenced in the Replace With expression ([0-9]{4}) Searches for any single digit in the class '0-9' that is repeated 4 times. This grouping is also captured with parentheses so that it can be referenced in the Replace With expression. \) Ssearches for a literal closing paren. In the Replace With expression: ( inserts a parenthesis \1 inserts the first captured group (the '(c)' in the Find What expression). \2 inserts the second captured group (the '([0-9]{4})' in the Find What expression). For more info, look hehttp://www.bokorlang.com/journal/15msw.htm and hehttps://office.microsoft.com/en-us/w...eplace-text-by... |
Reply |
Thread Tools | |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Find+Replace Dialog Box, Replace with Format problem | Microsoft Word Help | |||
Find multiple characters in one find using MSword find/replace | Microsoft Word Help | |||
Using find and replace or macros to replace page ranges | Microsoft Word Help | |||
Find/ Replace is auto-capping the words I want to replace with | Microsoft Word Help | |||
How can I create a macro to find and replace text attributes? | Microsoft Word Help |