Word 2010でブックマークの名前を変更する


13

私は、文書全体で一貫性を保つ必要のある引用や一般的に使用される情報への内部リンクを持つ技術文書を作成するために、Wordでブックマークをよく使用します。それらを作成するには、テキストを選択し、メニューInsert-> Links->に移動Bookmarkして名前を割り当て、次にInsert-> Links->に移動Citationsして挿入するブックマークを選択します。これにより、そのブックマークのテキストがドキュメント内の別の場所に挿入されます。

私がこれを行う理由の例として、ドキュメントの状態をリストするフロントページがあり、その情報はフッターに繰り返されます。ブックマークを使用して、そのテキストへのリンクを設定し、そのリンクをフッターに挿入します印刷プレビューに移動するか、ドキュメント内のすべてのフィールドを更新するたびに自動的に更新されます。このようにして、検索と置換を行わずに、正しいテキストが正しい場所で更新されることを知ることができます。

ここに画像の説明を入力してください

ここで、大まかに名前を付けたブックマークを持っているとしましょう。
ここに画像の説明を入力してください

ブックマークの名前を変更する右クリックはありません。また、ブックマークを修正できるドキュメントプロパティが見つかりません。

同じテキストを選択してから古いブックマークを削除することで新しいブックマークを挿入できますが、次のようになります:
ここに画像の説明を入力してください

次に、フィールドを右クリックして、(現在は事実上名前が変更された)ブックマークに戻す必要があります。

特にこのブックマークが複数回使用される大きなドキュメントでは、これは完全には使用できません。

私はこの質問のように、GoogleでいくつかのVBAスクリプトをウェブ上で見ましたが、新しいブーマークを効果的に作成し、古いものを削除すると、上記と同じ問題が発生し、理想的ではありません。

Word文書のブックマークの名前を変更するためのより簡単な、またはより効果的な方法はありますか?または、この仕事に間違ったツール™を使用している可能性がありますか?


2010ではなくWord 2013を意味しましたか?
ギリシャ語-エリア51提案

@LePressentiment私のWordのコピーは2010年ですが、バージョン間でブックマーク機能を大幅にオーバーホールしない限り、以下の回答が2013年に適用されない理由はわかりません。彼らがいた場合、私は実際に驚かれることでしょう。
木梅

@LePressentiment Mokubaiによって更新された私の回答をご覧ください。
DavidPostill

回答:


7

Word文書のブックマークの名前を変更するためのより簡単な、またはより効果的な方法はありますか?

Wordには組み込みの名前変更機能はありません。この不足を回避するためのオプションがいくつかあります。

  1. アドインを使用します。

  2. VBAを使用します。


アドインソリューション

ブックマークツールアドインを使用する

これは、標準のブックマークダイアログボックスが実行するすべてを実行するための使いやすいユーザーインターフェイスを提供します。

ブックマークツールはWord 2003用に開発されました。Word2007/2010で完全に機能します。

...

[ブックマークの追加/名前変更]セクションを使用すると、ブックマークを簡単に追加できます。

  • 標準ダイアログのように、テキストを選択し、フィールドに名前を入力して、「追加」をクリックするだけです。
  • 標準のダイアログとは異なり、ブックマークツールはキー入力を有効なブックマーク名文字に制限し、重複するブックマーク名を作成しようとすると警告します。
  • このセクションを使用して、既存のブックマークの名前を変更することもできます。

    ここに画像の説明を入力してください

ソースブックマークツールアドイン


VBAソリューション

名前変更機能はありません。古い名前を削除し、新しいブックマーク名で範囲をマークする必要があります。サンプルVBAコードは次のとおりです。

Sub ReNameBookMark()
    Dim doc As Word.Document
    Dim rng As Word.Range
    Dim bmk As Word.Bookmark
    Dim inpBookmark, repBookmark, fieldStr As String

    Set doc = Word.ActiveDocument

    inpBookmark = InputBox("Enter bookmark name that you want to be replaced:", "BookMark Replace")
    repBookmark = InputBox("Enter bookmark name replace with:", "BookMark Replace")

    Set rng = doc.Bookmarks(inpBookmark).Range
    Set bmk = doc.Bookmarks(inpBookmark)
    bmk.Delete
    rng.Bookmarks.Add (repBookmark)

    If doc.Fields.Count >= 1 Then
        For i = 1 To doc.Fields.Count
            fieldStr = doc.Fields(i).Code.Text
            If Left(fieldStr, 4) = " REF" Then
                doc.Fields(i).Code.Text = Replace(fieldStr, inpBookmark, repBookmark, , 1, vbTextCompare)
                doc.Fields(i).Update
            End If

            'MsgBox "Code = " & doc.Fields(i).Code & vbCr & "Result = " & doc.Fields(i).Result & vbCr
        Next i
    End If
End Sub

ソースブックマークのテキストではなく、ブックマークの「名前」を変更します。名前を変更するブックマークを参照している可能性のあるものを変更するには、ドキュメント内のフィールドを実行するループを追加します。

このスクリプトを使用して注意する必要があります。単に「REF」(または、そのようなの上部または下部ケースバリアント)と命名されているすべてのブックマークの名前を変更するたとえばます破るALL面白いと予期しない方法で参照を。これは、例および大まかな修正のみを目的としています。

複数のブックマークの名前を一括で変更する場合は、「Word文書のブックマークの名前を変更するより簡単または効果的な方法はありますか?」を参照してくださいサンプルVBAコードも含まれています。


@Mokubaiアドインでこれを行うことができるようです(更新された回答を参照)?残念ながら、私は...とテストに言葉のコピーを持っていない
DavidPostill

午前中にPCに戻ったら、アドインをテストします。おそらく家庭では大丈夫ですが、職場ではIT部門がそのようなことを少し警戒している可能性があるため、使用できるとは思いません。両方の方法を試し、VBAスクリプトを拡張して検索と置換を行えるかどうかを確認します。私がどこかに着いて、それでいいなら、それをあなたの答えに編集したいと思います。
木梅

@LePressentimentあなたが望むものの助けになる場合、上記のVBAスクリプトにいくつかの機能を追加して、現在の名前と新しい名前の入力ボックスを提供し、それらのブックマークを参照するフィールドでダーティ検索と置換を行いました。それは完璧ではありませんが、何もないよりはましであり、仕事で行う必要があるもの以上のものです。
木梅

ブックマークツールアドインは、ブックマークの名前を変更した後にブックマークへの参照を解除します(Windows上のWord 365の場合)。
filups21

1

私はこれと同じ問題を抱えていて、この回避策/解決策に出くわしました。

参照するテキスト(私の場合はタイトル)について、次のようにDocumentプロパティのタイトルを設定します。

Insert tabQuick PartsDocument PropertyTitle

これにより、タイトルを入力できるテキスト用の編集可能なボックスが追加されます。

次に、あなただけに行くことができ、それを参照するために、Insert tabQuick PartsFieldTitle、または私が誤ったもののように行う-私は参照を設定していたと私はそれを更新するときF9、それは、それが参照していることをタイトルボックスを追加しました。

タイトルボックスを更新すると、押すことなくすべての参照が自動的に更新されるため、これは非常にクールですF9!!! これは、Ctrl+ A関数がヘッダー/フッターの内容をキャプチャしないため、ヘッダーに参照がある場合に最適です。通常、ヘッダー/フッター内をダブルクリックして選択し、押しF9て更新する必要があります。

したがって、上記のようにタイトル参照を作成する代わりに、これを実行します。

  • タイトルボックスを設定した後、タイトルボックスのブックマークを作成します。

    • タイトルボックスを選択します(上部のタイトルタブをクリックして、すべてのボックスを選択してください)
    • Insert→→ Bookmark(名前を言うProject_title)→add
  • 次に、次のような参照を追加します。

    • Insert tabQuick PartsFieldRef(および選択Project_titleまたは何でもあなたはそれを呼ばれます)
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.