Tuesday 6 March 2018

microsoft office - Is it possible to assign a specific style to all cross-references in Word 2007?


Nothing more to add, I would like to change the style of all cross-references I have in a Word 2007 document at once. But I have no idea how to do it. How can this be done?



Answer



Some cross-reference types are automatically formatted with the "intense reference" style, but most are formatted as "normal" text.


To apply the "intense reference" style to the text of the cross reference:



  • select the text

  • choose the "Home" tab in the ribbon

  • using either the up-down buttons or the drop-down button in the "Styles" group of the ribbon, choose the "intense reference" style (or another style if you prefer)


To change the appearance of all text of a given style:



  • choose the "Home" tab in the ribbon

  • using the drop-down button in the "Styles" group of the ribbon, choose "Apply styles..."

  • in the "Apply Styles" dialog box under "Style Name" choose the name of the style you want to change (e.g. "intense reference")

  • Click the "Modify..." button

  • Change the formatting to suit you and click "OK"


To apply a style to all cross references at once:



  • Press Alt+F9 to show field codes

  • Select the "Home" tab in the ribbon

  • Click on "Replace" in the "Editing" group

  • In the "Find what" field, type ^19 REF

    • (That's caret-one-nine-space-R-E-F)



  • Click in the "Replace with" field, but don't type anything

  • Click the "More" button

  • The bottom section of the dialog should be titled "Replace" (with a horizontal rule after it)

  • Click the "Format" button and select "Style..."

  • Choose a style (e.g. "Intense Reference") and click OK

  • It should now show the style you selected under the "Replace with" field

  • Click "Replace All" if you're feeling brave or use "Find Next" and "Replace" to step through and replace or skip each reference field code's style individually

  • Press Alt+F9 to hide field codes


See this page for more information on special codes in Find and Replace.


Here is a macro that will add the switch \* mergeformat to each of the fields. This switch is necessary to keep the formatting from being lost if you do a field update. You can assign the macro to a keystroke and it will step through the fields one at a time for each time you press the keystroke. You can also edit the macro to loop over the whole document to automate the process.


Sub mf()
'
' mf Macro
' Find cross references and add \* mergeformat
'
Selection.Find.ClearFormatting
With Selection.Find
.Text = "^19 REF"
.Forward = True
.Wrap = wdFindContinue
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.MoveLeft Unit:=wdCharacter, Count:=1
Selection.TypeText Text:="\* mergeformat "
Selection.Find.Execute
End Sub

No comments:

Post a Comment

Where does Skype save my contact's avatars in Linux?

I'm using Skype on Linux. Where can I find images cached by skype of my contact's avatars? Answer I wanted to get those Skype avat...