1

Word 2010 で、別のテンプレートに基づいたテンプレートを作成しています。どちらのテンプレートにも、かなりの量の VBA コードが含まれています。元のテンプレートを参照して、そのモジュールにアクセスしました。元のテンプレートのグローバル変数もこの方法でアクセスできますか? もしそうなら、それらにアクセスするためのコーディング標準はありますか?

TheTemplate.VariableName

または、名前だけでアクセスできます:

VariableName
4

1 に答える 1

2

各テンプレートは閉じたオブジェクトです。テンプレートのモジュールにグローバルな変数は、現在ロードされている他のテンプレートからアクセスしたり、表示したりすることはできません。

できることは、ドキュメントオブジェクトにパブリックプロパティを追加することです。それらをすべてのドキュメントにある「ThisDocument」クラスモジュールに追加します。たとえば、次のような文字列プロパティがあります。

Public Property Get Foo() As String
  Foo = "Any value"
End Property

Documentこれで、そのオブジェクトによって公開されるため、どこからでもそのプロパティにアクセスできます。

MsgBox Application.Documents("appropriate document reference").Foo
' alerts "Any value"
于 2012-10-29T16:17:17.323 に答える