英語で読む

次の方法で共有


Variables オブジェクト (Word)

文書またはテンプレートに追加された変数を表す Variable オブジェクトのコレクションです。 文書変数は、マクロ セッション間のマクロの設定を保持するために使用されます。

注釈

Variables コレクションを取得するのにには、 変数 のプロパティを使用します。 次の例は、"Sales.doc"という名前のドキュメント内の変数の数を表示します。

MsgBox Documents("Sales.doc").Variables.Count & " variables"

変数をドキュメントに追加するのにには、 Add メソッドを使用します。 次の使用例は、値が作業中の文書の 12 の"Temp"という名前の文書変数を追加します。

ActiveDocument.Variables.Add Name:="Temp", Value:="12"

Variables コレクションに既に存在する名前の文書変数を追加しようとすると、エラーが発生します。 このエラーを回避するのには、新しい変数を追加する前にコレクションを列挙できます。 作業中の文書に文書変数 Blue が既に存在する場合次の使用例は、その値を 6 に設定します。 この変数は存在しない、次の使用例は、ドキュメントに追加してを 6 に設定します。

For Each aVar In ActiveDocument.Variables 
 If aVar.Name = "Blue" Then num = aVar.Index 
Next aVar 
If num = 0 Then 
 ActiveDocument.Variables.Add Name:="Blue", Value:=6 
Else 
 ActiveDocument.Variables(num).Value = 6 
End If

オブジェクトを取得する 1 つ の変数変数 (インデックス) に文書変数の名前またはインデックス番号を使用します。 次の例では、作業中の文書に文書変数 Temp の値を表示します。

MsgBox ActiveDocument.Variables("Temp").Value

インデックス番号は、 Variables コレクション内のドキュメント変数の位置を表します。 Variables コレクションに追加される最初の 変数 はインデックス番号 1 です。コレクションに追加される 2 番目の変数はインデックス番号 2 などです。 次の使用例は、作業中の文書の最初のドキュメント変数の名前を表示します。

MsgBox ActiveDocument.Variables(1).Name

テンプレートに変数を追加するには、 OpenAsDocument メソッドを使用して文書としてテンプレートを開きます。 作業中の文書に添付されたテンプレートで、ユーザー名を [ オプション] ダイアログ ボックス) を格納する例を次にします。

ScreenUpdating = False 
With ActiveDocument.AttachedTemplate.OpenAsDocument 
 .Variables.Add Name:="UserName", Value:= Application.UserName 
 .Close SaveChanges:=wdSaveChanges 
End With

関連項目

Word オブジェクト モデル リファレンス

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。