больше нечего добавить, хотелось бы изменить стиль всех перекрестные ссылки у меня в документе Word 2007 и сразу. Но я понятия не имею, как это сделать. Как это может быть сделано?
Можно ли назначить определенный стиль всем перекрестным ссылкам в Word 2007?
5 ответов
некоторые типы перекрестных ссылок автоматически форматируются со стилем" интенсивная ссылка", но большинство из них форматируются как" обычный " текст.
применить стиль" интенсивная ссылка " к тексту перекрестной ссылки:
- выделение текста
- выберите вкладку "Главная" на ленте
- используя кнопки вверх-вниз или кнопку раскрывающегося списка в группе "стили" ленты, выберите стиль "интенсивная ссылка" (или другой стиль, Если вы prefer)
изменить внешний вид всего текста заданного стиля:
- выберите вкладку "Главная" на ленте
- в выпадающем кнопку в "стили" группы на ленте выберите "применить стили..."
- в диалоговом окне "применить стили" в разделе "Имя стиля" выберите имя стиля, который вы хотите изменить (например, "интенсивная ссылка")
- Нажмите кнопку "Изменить"..."button
- изменить форматирование, чтобы удовлетворить вас и нажмите кнопку "OK"
применить стиль ко всем перекрестным ссылкам сразу:
- пресс Alt+F9 показать коды полей
- выберите вкладку "Главная" на ленте
- нажмите "заменить" в группе "редактирование"
- в поле" найти что " введите
^19 REF
- (это каретка-один-девять-пространство-R-E-F)
- Нажмите в поле "заменить на", но не вводите ничего
- Нажмите кнопку "Дополнительно"
- нижняя часть диалогового окна должна иметь название "заменить" (с горизонтальным правилом после него)
- Нажмите кнопку "Формат" и выберите " стиль..."
- выберите стиль (например, "интенсивная ссылка") и нажмите OK
- теперь он должен показать стиль, выбранный в поле "заменить на"
- Нажмите кнопку "Заменить все", если вы чувствуете себя храбрым или использовать "найти следующий" и "заменить", чтобы пройти через и замените или пропустите стиль каждого ссылочного кода поля по отдельности
- пресс Alt+F9 скрыть коды полей
See на этой странице для получения дополнительной информации о специальных кодах в разделе Поиск и замена.
вот макрос, который добавит переключатель \* mergeformat
для каждого поля. Этот параметр необходим для предотвращения потери форматирования при обновлении поля. Вы можете назначить макрос на нажатие клавиши, и он будет шаг через поля по одному за каждый раз, когда вы нажимаете клавишу. Можно также отредактировать макрос, чтобы выполнить цикл по всему документу для автоматизации процесса.
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
- пресс Alt+F9 показать коды полей
используйте следующий макрос для добавления CHARFORMAT во все перекрестные ссылки. Этот макрос добавляет строку в поле, только если она еще не существует.
Sub SetCHARFORMAT() ' ' Set CHARFORMAT switch to all {REF} fields. Replace MERGEFORMAT. ' ' Dim oField As Field Dim oRng As Range For Each oField In ActiveDocument.Fields 'For Each oField In Selection.Fields If InStr(1, oField.Code, "REF ") = 2 Then If InStr(1, oField.Code, "MERGEFORMAT") <> 0 Then oField.Code.Text = Replace(oField.Code.Text, "MERGEFORMAT", "CHARFORMAT") End If If InStr(1, oField.Code, "CHARFORMAT") = 0 Then oField.Code.Text = oField.Code.Text + "\* CHARFORMAT " End If End If Next oField End Sub
используйте этот макрос для форматирования всех перекрестных ссылок со стилем" тонкая ссылка " (убедитесь, что у вас есть такой стиль, и что показаны коды полей):
Sub SetCrossRefStyle() ' ' Macro to set styole of all cross references to "Subtle Reference" ' ' Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting Selection.Find.Replacement.Style = ActiveDocument.Styles( _ "Subtle Reference") With Selection.Find .Text = "^19 REF" .Replacement.Text = "" .Forward = True .Wrap = wdFindContinue .Format = True .MatchCase = False .MatchWholeWord = False .MatchKashida = False .MatchDiacritics = False .MatchAlefHamza = False .MatchControl = False .MatchWildcards = False .MatchSoundsLike = False .MatchAllWordForms = False End With Selection.Find.Execute Replace:=wdReplaceAll End Sub
пресс Alt+F9 чтобы скрыть коды полей
редактирование макроса, загруженного киборгом, мы можем легко автоматизировать отображение и скрытие кодов полей. так что каждый раз, когда мы хотим обновить мы не должны использовать коды переключения полей. Я использовал следующий код для добавления переключателя кода поля.
ActiveDocument.ActiveWindow.View.ShowFieldCodes = False
полный макрос выглядит следующим образом:
Sub SetCrossRefStyle()
'
' Macro to set styole of all cross references to "Subtle Reference"
'
'
ActiveDocument.ActiveWindow.View.ShowFieldCodes = True
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
Selection.Find.Replacement.Style = ActiveDocument.Styles( _
"Subtle Reference")
With Selection.Find
.Text = "^19 REF"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchKashida = False
.MatchDiacritics = False
.MatchAlefHamza = False
.MatchControl = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
ActiveDocument.ActiveWindow.View.ShowFieldCodes = False
End Sub
это первый раз, когда я использую макросы для ускорения работы в word. спасибо киборгу за такой полезный макрос.
быстрый и эффективный способ:
- Выделите текст с форматированием, который вы хотите использовать для ссылки.
- выберите Home вкладка на ленте.
- щелкните правой кнопкой мыши на нормальный стиль и выберите обновление нормальное для матча отбора.
- обновить ссылки с Ctrl + на,F9.
этот макрос открывает диалоговое окно перекрестная Ссылка для вставки перекрестной ссылки в текущую позицию курсора.
при закрытии диалогового окна Внешняя ссылка после вставки ссылки макрос возобновляет форматирование вставленной перекрестной ссылки на верхний индекс.
Sub XrefSuper()
'
' This opens the Cross Reference dialogue box to insert a cross reference at the current cursor position.
' When the dialogue box is closed after inserting the reference the macro resumes to format the inserted cross reference to superscript.
'
'
Dim wc As Integer
wc = ActiveDocument.Characters.Count
Dim dlg As Dialog
Set dlg = Dialogs(wdDialogInsertCrossReference)
dlg.Show 'Open dialogue and perform the insertion from the dialog box)
'Macro continues after closing CrossRef dialogue box
If wc = ActiveDocument.Characters.Count Then Exit Sub 'If we failed to insert something then exit
Selection.MoveLeft Unit:=wdCharacter, Count:=1, Extend:=wdExtend
Selection.Font.Superscript = wdToggle
Selection.MoveRight Unit:=wdCharacter, Count:=1
Selection.Font.Superscript = wdToggle
End Sub
спасибо Грэм скан из ExpertsExchange как открыть диалог внешней ссылки.
Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]