Karlは、多くの頭字語を使用する職業で働いています。彼らの標準的な手順は、頭字語をドキュメント内で初めて使用するときにのみ定義することです。さらに、ドキュメントの最後に、頭字語とその意味をアルファベット順にリストした付録を常に作成する必要があります。カールはおそらく「マーク」する方法を探しています

本体の頭字語と頭字語の付録が自動的に作成されます。

これをWordで直接行う方法はありません。目次、権限のテーブル、インデックスなど、自動的に作成できるテーブルにはいくつかの種類があります。これらの最後の2つのテーブル(権限とインデックスのテーブル)は、頭字語リストを作成するために使用できる可能性がありますが、それらがまだドキュメントに追加されていない場合、およびページ番号を含む頭字語リストを気にしない場合に限ります。

頭字語リストを作成するために権限テーブルツールを使用する場合は、ShaunaKellyがこれを行う方法に関する優れた記事をまとめました。この記事では、用語集について具体的に説明しています。用語集は、基本的に頭字語リストです。

http://www.ShaunaKelly.com/word/glossary/glossary.html

リストを作成するために索引ツ​​ールを使用する場合は、頭字語が定義されている場合、括弧内にその意味が続くと仮定して、次の一般的な手順に従うことができます。

。頭字語とその意味を選択します。これは、ドキュメントで頭字語の最初のインスタンスを見つけてから、それに続く括弧内の意味とともにその頭字語を選択することを意味します。

。 Alt + Shift + Xを押して、選択したテキストをインデックスにマークします。

。リストに含める他の頭字語について、手順1と2を繰り返します。

。ドキュメントの最後に、インデックスを挿入します。実際にインデックスを挿入する方法は、_WordTips._の他の問題でカバーされています。

このアプローチでは、インデックスに括弧が残ることに注意してください。括弧が不要な場合は、マークを付けた各頭字語に移動して、インデックスに使用されているフィールドコードを表示する必要があります。次のようになります:

{ XE "abbrev (this is the definition)" }

フィールドコード内で括弧を削除して、頭字語リストに表示したいとおりにテキストを表示できます。上記の方法を使用して、頭字語の最初のインスタンス(最初に定義された場所)のみをマークすると、リスト内の頭字語ごとに1つのページ番号が表示されます。ページ番号を付けるというアイデアは気に入っているが、各頭字語のすべてのインスタンスにそれらを付けたい場合は、頭字語の出現ごとにマークを付ける必要があります。これは、はるかに複雑な作業です。

すでに説明した方法のいずれも使用したくない場合は、頭字語リストの作成に役立つマクロを作成できます。次のマクロは、基本的に、強調表示したテキストをドキュメントの最後にコピーします。

Sub Send_2_acronym_list()

With ActiveDocument.Bookmarks         .Add Range:=Selection.Range, Name:="xxxHERExxx"

.DefaultSorting = wdSortByName         .ShowHidden = True     End With     Selection.Copy     Selection.EndKey Unit:=wdStory     Selection.TypeParagraph     Selection.PasteAndFormat (wdPasteDefault)

Selection.GoTo What:=wdGoToBookmark, Name:="xxxHERExxx"

Application.Run MacroName:="Normal.MoreNewMacros.EditGoTo"

Selection.MoveRight Unit:=wdCharacter, Count:=1 End Sub

頭字語の最初のインスタンスとその定義を選択してから、マクロを呼び出すという考え方です。現在の場所にブックマークを設定し、テキストをコピーし、ドキュメントの末尾を選択して、そこにテキストを追加します。次に、ブックマークを使用して、元の場所を再度選択できるようにします。

この方法で頭字語の「マーク付け」が完了したら、ドキュメントの最後にコピーされたテキストを選択して、任意の方法でフォーマット(または編集)できます。

さらに自動化されたアプローチが必要な場合は、ドキュメントをスキャンして、見つかった頭字語を抽出するマクロを作成できる場合があります。このようなアプローチが機能するためには、頭字語とその定義の厳密な構造に忠実に従っていることを確認する必要があります。次のマクロは、頭字語が常に大文字の文字列であり、その後にスペースが続き、その後に括弧で囲まれたテキストが続くことを前提としています。

Sub ListAcronyms()

Dim strAcronym As String     Dim strDefine As String     Dim strOutput As String     Dim newDoc As Document

Application.ScreenUpdating = False     Selection.HomeKey Unit:=wdStory     ActiveWindow.View.ShowHiddenText = False

'Loop to find all acronyms     Do         'Search for acronyms using wildcards         Selection.Find.ClearFormatting         With Selection.Find             .ClearFormatting             .Text = "<[A-Z]@[A-Z]>"

.Replacement.Text = ""

.Forward = True             .Wrap = wdFindStop             .Format = False             .MatchCase = True             .MatchWildcards = True             .MatchWholeWord = True             .Execute         End With

'Only process if something found         If Selection.Find.Found Then             'Make a string from the selection, add it to the             'output string             strAcronym = Selection.Text

'Look for definition             Selection.MoveRight Unit:=wdWord             Selection.MoveRight Unit:=wdCharacter, _               Extend:=wdExtend             strDefine = ""

If Selection.Text = "(" Then                 While Selection <> ")"

strDefine = strDefine & Selection.Text                     Selection.Collapse Direction:=wdCollapseEnd                     Selection.MoveRight Unit:=wdCharacter, _                       Extend:=wdExtend                 Wend             End If             Selection.Collapse Direction:=wdCollapseEnd             If Left(strDefine, 1) = "(" Then                 strDefine = Mid(strDefine, 2, Len(strDefine))

End If             If strDefine > "" Then                 'Check if the search result is in the Output string                 'if it is, ignore the search result                 If InStr(strOutput, strAcronym) = 0 Then                     strOutput = strOutput & strAcronym _                       & vbTab & strDefine & vbCr                 End If             End If         End If     Loop Until Not Selection.Find.Found

'Create new document and change active document     Set newDoc = Documents.Add

'Insert the text     Selection.TypeText Text:=strOutput

'Sort it     newDoc.Content.Sort SortOrder:=wdSortOrderAscending     Application.ScreenUpdating = True     Selection.HomeKey Unit:=wdStory End Sub

マクロは、頭字語である可能性があると思われるものがないかドキュメントを調べます。候補が見つかった場合は、その候補の後に開き括弧が続くかどうかを確認します。その場合、閉じ括弧までのすべてが頭字語の定義と見なされます。マクロがドキュメントの処理を終了すると、新しいドキュメントを作成し、そこに頭字語を追加して、すべてを並べ替えます。

注:

このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。

(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(446)は、Microsoft Word 97、2000、2002、および2003に適用されます。Wordのリボンインターフェイス(Word 2007)用のこのヒントのバージョンを見つけることができます。以降)ここ: