상호 참조를 위해 제목 번호와 텍스트를 편리하게 추가

상호 참조를 위해 제목 번호와 텍스트를 편리하게 추가

저는 주로 기술 문서를 작성합니다. 문서에는 많은 상호 참조가 필요합니다. 내 상호 참조 형식은 항상 동일합니다.

<heading-number> <space> <heading-text>.

상호 참조 대화 상자를 사용하여 이를 추가하는 것은 고통스럽습니다. 제목을 찾고, 드롭다운에서 단락 번호를 선택하고, 삽입하고, 드롭다운에서 단락 텍스트를 선택한 다음, 삽입하고, 문서로 돌아가서 공백을 삽입합니다(일반적으로 삽입된 제목 텍스트를 기울임꼴로 변경합니다).

이 작업을 수행하는 더 편리한 방법이 있습니까? 상호 참조에 대한 기존 질문을 살펴봤지만(그리고 그 질문이 많이 있습니다) 이 문제를 다루는 내용은 없는 것 같습니다.

답변1

나는 다음을 썼다.매크로설명했던 상호 참조 대화 상자의 모든 번거로움을 피하면서 편안하게 상호 참조를 삽입할 수 있습니다. 또는
중 하나를 삽입할 수 있지만 원하는 조합을 삽입하도록 쉽게 조정할 수 있습니다.<heading-number><heading-text>

답변2

7년 전이지만 아직도 사람들은 그것과 싸우고 있습니다. 내 작은 기여는 다음과 같습니다. Dim strCode As String

With Dialogs(wdDialogInsertCrossReference)
    .ReferenceType = "Numbered item"
    .ReferenceKind = wdNumberRelativeContext
    .InsertAsHyperlink = True
    .SeparateNumbers = False
    .Show
End With
Selection.TypeBackspace 'trick it selects the complete field
Selection.Copy
Selection.MoveRight Unit:=wdCharacter, Count:=1 ' unselect
Selection.TypeText Text:=" " ' Separate with one space
Selection.PasteAndFormat (wdPasteDefault) ' duplicate the copied field
Selection.TypeBackspace ' Select the duplicated field
strCode = Selection.Fields(1).Code ' get the code from the field
strCode = Replace(strCode, "\r ", "") ' Remove option to have paragraph text
strCode = Replace(strCode, "\w ", "")
Selection.Fields(1).Code.Text = strCode ' Update the text of the ;code text
Selection.Fields.Update ' Update the field to display § text
Selection.MoveRight Unit:=wdCharacter, Count:=1 ' Deselect the updated field
Selection.TypeText Text:=" " ' add a space at the end

서브 끝

있는 그대로 제공되면 저에게 효과적입니다 ;-) 즐거운 시간을 보내시고 즐거운 시간을 보내세요...

답변3

Vince S의 솔루션은 완벽하게 작동합니다. 아직 평판이 50이 아니기 때문에 논평할 수는 없지만 Vince, 귀하의 솔루션은 훌륭합니다! 그것은 나에게 엄청난 시간을 절약해줍니다.

관련 정보