Word文書のプリロードにフィールドを入力しますか?


0

私がコマンドスイッチを使用して調査したことからは不可能と思われます。Word UIを起動する前に、Word文書またはテンプレートにカスタムテキストフィールドを入力する方法に関する提案。

値は、ローカルネットワークからWordテンプレートを呼び出すアプリケーションで事前に定義されます。

回答:


1

コードが必要です。Wordオブジェクトモデルを必要としない2つの基本的な可能性があります。

  1. .docx形式を使用し、Open Office APIなどのライブラリを使用して、ドキュメントのXMLコードを直接変更します。
  2. .docformatを使用し、dsofile.dllを使用して、カスタムドキュメントプロパティの値を更新します。

(オプション2は.docxで動作する可能性がありますが、それでもいくつかの欠点があります:Windowsでのみ動作します;古い方法です; dsofile.dllを配布する必要があります; DOCPROPERTYフィールドを使用してデータを挿入する必要があります、ドキュメントを開いた後も更新する必要があります。dsofileの詳細については、こちらをご覧ください

オプション1では、何らかの種類のフィールドコードを使用してXMLで値を直接更新できますが、すべてのデータを含むカスタムXMLパーツにマップされたコンテンツコントロールを使用する方がおそらく簡単です。その後、本当に必要なのは、PartのXMLをドキュメントに適したデータで置き換えることだけです。Eric Whiteのページ(たとえば、ここから開始)が役立つ場合があります。


マクロを実行するためにコマンドラインオプションを試したかどうかを確認するつもりでした-それを成功させるには、少なくともVBAコードがアクセスできる場所に値を配置する必要があります。

私はそれを試していませんが、オプションかもしれません。Open Officeを使用するというアイデアが好きで、研究を続けています。まともなAPIのように見えます。ご意見ありがとうございます!さらなる回答が必要なため、残念ながらあなたの回答に賛成票を投じることができません
-burlistic

オブジェクト指向のアプローチで幸運-私はそのAPIを知らないので、あなたはすでにその前で私の前にいます。AIUIが私の「回答」が実際にあなたの質問に答えていると思うなら、あなたはあなたの担当者に関係なく答えとしてそれをマークすることができるはずです。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.