私は主に技術文書を書いています。文書には多くの相互参照が必要です。私の相互参照の形式は常に同じです。
<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、あなたの解決策は素晴らしいです! おかげで時間を大幅に節約できます。