次の方法で共有


XMLMapping.SetMapping メソッド (Word)

作成するか、コンテンツ コントロールの XML マッピングを変更することができます。 Microsoft Word がコンテンツ コントロールをドキュメントのカスタム XML データ ストア内のカスタム XML ノードにマップする場合は True を 返します。

構文

expression. SetMapping( _XPath_ , _PrefixMapping_ , _Source_ )

'XMLMapping' オブジェクトを返す式。

パラメーター

名前 必須 / オプション データ型 説明
XPath 必須 String コンテンツ コントロールをマップする XML ノードを表す XPath 文字列を指定します。 無効な XPath 文字列を指定すると、実行時エラーが発生します。
PrefixMapping 省略可能 String XPath パラメーターで指定した式を照会するときに使用するプレフィックス マッピングを指定します。 省略した場合、現在の文書の指定したカスタム XML 部分のプレフィックス マッピングが使用されます。
Source 省略可能 CustomXMLPart コンテンツ コントロールをマップする目的のカスタム XML データを指定します。 このパラメーターを省略すると、XPath は現在のドキュメント内のすべてのカスタム XML を評価し、XPath が XML ノードに解決する最初の CustomXMLPart とのマッピングが確立します。

戻り値

Boolean

注釈

XML マッピングが既に存在する場合、既存の XML マッピングは置き換えられ、コンテンツ コントロールの文字列は新しくマップされた XML ノードの内容に置き換えられます。 指定した XPath が指定したカスタム XML 部分の XML ノードに評価されない場合でも、マッピングを指定することができ、マッピングが作成されます。 このマッピングは、指定した XPath が指定したカスタム XML 部分内の XML ノードに評価されたときに、自動的にリンクされます。

SetMappingByNode メソッドも参照してください。

注:

リッチ テキスト コンテンツ コントロールのマッピングを作成すると、実行時エラーが発生します。

次の使用例は、カスタム XML 部分を挿入し、カスタム部分の XML を設定した後、文書の先頭に 2 つのコンテンツ コントロールを挿入し、コントロールの内容をカスタム部分の XML 要素の内容にマップします。

Dim objRange As Range 
Dim objCustomPart As CustomXMLPart 
Dim objCustomControl As ContentControl 
 
Set objCustomPart = ActiveDocument.CustomXMLParts.Add 
objCustomPart.LoadXML ("<books><book><author>Matt Hink</author>" & _ 
 "<title>Migration Paths of the Red Breasted Robin</title>" & _ 
 "<genre>non-fiction</genre><price>29.95</price>" & _ 
 "<pub_date>2/1/2007</pub_date><abstract>You see them in " & _ 
 "the spring outside your windows. You hear their lovely " & _ 
 "songs wafting in the warm spring air. Now follow the path " & _ 
 "of the red breasted robin as it migrates to warmer climes " & _ 
 "in the fall, and then back to your back yard in the spring." & _ 
 "</abstract></book></books>") 
 
ActiveDocument.Range.InsertParagraphBefore 
Set objRange = ActiveDocument.Paragraphs(1).Range 
Set objCustomControl = ActiveDocument.ContentControls _ 
 .Add(wdContentControlText, objRange) 
objCustomControl.XMLMapping.SetMapping _ 
 "/books/book/title", , objCustomPart 
 
objRange.InsertParagraphAfter 
Set objRange = ActiveDocument.Paragraphs(2).Range 
Set objCustomControl = ActiveDocument.ContentControls _ 
 .Add(wdContentControlText, objRange) 
objCustomControl.XMLMapping.SetMapping _ 
 "/books/book/abstract", , objCustomPart

関連項目

XMLMapping オブジェクト

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

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