Java を使用して Word ドキュメントからフォーム フィールドを作成および取得する

Java は、Microsoft Word ドキュメントの作成と操作を自動化するための非常に一般的なコンピューター言語です (DOCDOCX)。 Java プログラマーは、さまざまな Java ライブラリーを使用してプログラムで Word 文書を作成、変更、および保存するためのコードを作成できます。これにより、レポート、請求書の作成、大量のデータの処理などの操作を行う際の時間と労力を節約できます。さらに、Java はプラットフォームに依存しないため、さまざまなオペレーティング システム間でドキュメントを自動化するための実行可能な代替手段です。この記事では、Java を使用して Word 文書からフォーム フィールドを作成および取得する方法について説明します。

この記事では、次の点について説明します。

Java Word Automation Library - インストール

Conholdate.Total for Java を使用して、MS Word ドキュメントを自動化します。この Java Word 自動化ライブラリ のインストール手順は非常に簡単です。 Maven ユーザーは、プロジェクトの pom.xml ファイルに次の構成を含めることができます。

<repository>
	<id>ConholdateJavaAPI</id>
	<name>Conholdate Java API</name>
	<url>https://releases.conholdate.com/java/repo</url>
</repository>        
<dependency>
	<groupId>com.conholdate</groupId>
	<artifactId>conholdate-total</artifactId>
	<version>23.2</version>
	<type>pom</type>
</dependency>

次に、次のコマンドを実行します。

mvn clean    
mvn install -U

他の Java フレームワークをセットアップするには、releases.conholdate.com にアクセスしてください。

Java Word Automation: Word 文書にフォーム フィールドを作成する

フォームとは、空白 (フィールド) を埋める文書です。 Microsoft Word を使用して、ユーザーがエントリを選択できるドロップダウン リストを含む登録フォームを設計できます。フォーム フィールドは、名前や住所など、特定の種類のデータを保持するために使用されます。テキスト入力、コンボ ボックス、およびチェックボックスは、Microsoft Word のフォーム フィールドの例です。次のサブセクションでは、Java を使用して Word 文書を自動化してフォーム フィールドを作成する方法 について説明します。

Java を使用して Word 文書に入力テキスト フィールドを作成する

このサブセクションでは、Java を使用して Word 文書に入力テキスト フィールドを作成する方法 (DOC/DOCX) を学習します。以下の手順に従ってください。

  1. まず、Document クラスのオブジェクトを作成します。
  2. 次に、DocumentBuilder クラスのオブジェクトを作成し、Document オブジェクトで初期化します。
  3. その後、DocumentBuilder.insertTextInput メソッドを使用してテキスト入力フィールドを追加します。
  4. 最後に、ドキュメントを保存します。

次のコード サンプルは、Java を使用して Word 文書に入力テキスト フィールドを挿入する方法 を示しています。 結果のWord文書には、次のスクリーンショットのように、作成されたテキスト入力フィールドが表示されます。

Java を使用して Word 文書に入力テキスト フィールドを作成する

Java を使用して Word 文書にドロップダウンを追加する

このサブセクションでは、Java で Word 文書にドロップダウンを作成する方法 (DOC/DOCX) について説明します。

手順は次のとおりです。

  1. まず、Document クラスのオブジェクトを初期化します。
  2. 次に、DocumentBuilder オブジェクト クラスのオブジェクトをインスタンス化します。
  3. 次に、DocumentBuilder.insertComboBox メソッドを使用してドロップダウン フィールドを挿入します。
  4. 最後に、ドキュメントを保存します。

次のコード サンプルは、Java を使用して Word 文書にドロップダウンを挿入する方法 を示しています。 出力は次のスクリーンショットに表示されます。

Java を使用して Word 文書にドロップダウン フィールドを作成する

JavaでWord文書にチェックボックスを挿入する

ここでは、Java を使用して MS Word 文書にチェックボックスを挿入する方法 を学習します。

以下の手順に従ってコードを記述してください。

  1. まず、Document クラスのオブジェクトを作成します。
  2. 次に、DocumentBuilder オブジェクトを作成し、Document オブジェクトで初期化します。
  3. その後、DocumentBuilder.insertCheckBox メソッドを使用してチェックボックス フィールドを作成します。
  4. 最後に、ドキュメントを保存します。

次のコード サンプルは、Java を使用して Word 文書にチェックボックスを作成する方法 を示しています。

Java Word Automation Library を使用して Word ドキュメントからフォーム フィールドを取得する

ここまでで Java を使用して Word 文書にさまざまなフォーム フィールドを追加する方法 を学びました。このセクションでは、Java で Word ファイルのフォーム フィールドを取得する方法について説明します。

4 つのフォーム フィールドを含むファイルがあるとします。フィールド コレクションを取得する方法と、名前またはインデックスでフィールドを取得する方法を学びましょう。以下のステップバイステップガイドに従ってください。

  1. まず、Document クラスを使用して Word 文書を読み込みます。
Document doc = new Document("FormFields.doc");
  1. Range.getFormFieldsメソッドで取得できるFormFieldCollectionクラスのオブジェクトを取得します。
FormFieldCollection formFields = doc.getRange().getFormFields();
  1. 特定のフィールドをインデックスで取得するには、FormFieldCollectionget(int index) メソッドを使用して FormField クラスのオブジェクトを取得します。
FormField formField1 = documentFormFields.get(3);
  1. 同様に、FormFieldCollection のオーバーロードされた get(文字列名) メソッドを使用して、FormField クラスのオブジェクトを名前で取得できます。
FormField formField2 = documentFormFields.get("Text2");

次のコード サンプルは、上記のすべての手順をまとめたものです。

無料ライセンスを取得する

無料の一時ライセンス をダウンロードして、評価制限なしで API をテストできます。

まとめ

この記事では、Java を使用して MS Word 文書のフォーム フィールドを取得および作成する方法 について説明しました。 DOC/DOCX ファイルにテキスト入力、ドロップダウン、およびチェックボックス フィールドを追加する手順について説明しました。最後に、Word 文書からフォーム フィールドを取得する手順について説明しました。

Java Word 自動化ライブラリ の詳細については、ドキュメント を参照してください。

最後に、conholdate.com にアクセスして、定期的に最新情報を入手してください。

質問する

フォーラム に質問やコメントを投稿してください。

関連項目