2017-02-16 11 views
0

Wordで条件付きドロップダウンを作成しようとしています。私はレガシーのドロップダウンフォームフィールドを複数のオプションで使用しました。Word(VBA)の既存のテキストフォームフィールドに文字列を挿入/置き換えます。

ドロップダウンからオプションの1つが選択されたとき(そして、それを入力するためにTabキーを押す必要があります)、下の従来のテキストフォームフィールド、単純なデフォルトテキストcaseステートメントから新しい文字列を移入する必要があります。私はすでにやった/働いて得た

もの:

  • をドロップダウンが働いている、と終了時に、それはマクロ
  • case文が
  • 例の結果を書き出され実行されます文は、変数(文字列型)である、のはActiveDocument.FormFields(「テキストボックス」)とテキストフォームフィールドのテキスト(デフォルトのテキストを)引くことができ
  • STRINGVARそれを呼び出してみましょう。
を結果

しかし、私が考えているのは、既存のテキストフォームフィールドのデフォルトテキストをcase文の文字列変数テキストに置き換える方法です。

私は ActiveDocument.FormFields(「テキストボックス」)を試してみた。= STRINGVAR

結果が、それはテキストフォームフィールド内では何も変わりません。デフォルトのテキストはまだそこにあります。

答えて

0

だから私は熟考し「オハイオ州」の瞬間を打った後、私自身の質問に答えることができます。

私は保護されていない文書(ActiveDocument.Unprotectパスワード:= "")を持っていたこれを実行するために:

ActiveDocument.Content.InsertAfterテキスト:=( "これは" 私のテキストである)

ので、私は正しい文字列をつかんでいるのだろうかと思っていた。

は、

ActiveDocument.FormFields( "テキストボックス")を判明。= STRINGVAR

が作業を行い結果。しかし、ファイルは(フォームを記入)で保護されていなければなりません。テキストフォームフィールドの文字列を置き換えます。それ以外の場合は、結果が実際に更新されたにもかかわらず、何も表示されません。それを見てください。

関連する問題