3

空白の Word フィールドにテキストを挿入して解析するだけでなく、ユーザー定義のフィールドとフィールド コードを VBA を使用して独自のテンプレートにプログラムで作成する方法はありますか? さらに、これらのフィールドを利用可能なフィールドのリストに表示させる方法はありますか?

4

2 に答える 2

5

最近、Word の MACROBUTTON および ADDIN フィールド タイプを使用するソリューションを開発しました。

フィールド内の 3 番目の空白で区切られたエントリ (プログラムでは field.code.text) が Word 内に表示されるため、MACROBUTTON が便利であることがわかりました。これにより、ユーザーはフィールドを移動しながら見ることができます。{ MACROBUTTON NoMacro * } は Word で「*」を表示します。たとえば、「NoMacro」という名前のマクロを意図的に定義していないため、ユーザーがそれをダブルクリックしても何もしません。

ADDIN フィールドは表示されず (表示フィールド コードがオンになっている場合を除く)、非表示の文字列が field.data プロパティに格納されます。このフィールドを使用すると、ユーザーがその内容を表示または変更できない非表示のフィールドを作成できます (ただし、「フィールド コードの表示」をオンにすると、それが ADDIN フィールドであることがわかります (ただし、表示/編集することはできません))。 "data" プロパティ)、他のフィールドと同じようにこのフィールドを削除できることを確認します)。

これらのページが役に立ちました:

于 2008-11-20T18:01:18.623 に答える
2

何を考えていましたか?手動またはVBAを使用してカスタムドキュメントプロパティを追加することができます。これらは、DOCPROPERTYの下のフィールドとしてアクセスできます。

{ DOCPROPERTY "Test"  \* MERGEFORMAT } 

マクロを使用して、カスタムプロパティがドキュメントに追加されていることを確認できます。

Sub AutoNew()
Dim objCustomProperties As DocumentProperties

Set objCustomProperties = ActiveDocument.CustomDocumentProperties

objCustomProperties.Add Name:="Test", _
   Type:=msoPropertyTypeString, Value:="Blah", _
   LinkToContent:=False

End Sub

さらに詳しい情報

Automacros:http ://msdn.microsoft.com/en-us/library/aa263747(office.10).aspx

Microsoft Office Word 2003のカスタムドキュメントプロパティについて:http://msdn.microsoft.com/en-us/library/aa537154.aspx

于 2008-10-20T12:45:00.680 に答える