次の方法で共有


チュートリアル : 初めての Word 用アプリケーション レベルのアドインの作成

この入門編のチュートリアルでは、Microsoft Office Word 用のアプリケーション レベルのアドインを作成する方法について説明します。この種のソリューションに作成した機能は、どの文書が開いているかにかかわらず、アプリケーション自体に対して使用できます。

対象: このトピックの情報は、Word 2013 と Word 2010 のアプリケーション レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。

このチュートリアルでは、次の作業について説明します。

  • Word アドイン プロジェクトを作成する。

  • Word のオブジェクト モデルを使用して保存時にテキストを文書に追加するコードを記述する。

  • プロジェクトをビルドし、実行してテストする。

  • 完成したプロジェクトをクリーンアップして、開発用コンピューターでこのアドインが自動的に実行されないようにする。

[!メモ]

お使いのマシンで、Visual Studio ユーザー インターフェイスの一部の要素の名前や場所が、次の手順とは異なる場合があります。これらの要素は、使用している Visual Studio のエディションや独自の設定によって決まります。詳細については、「Visual Studio の設定」を参照してください。

必須コンポーネント

このチュートリアルを実行するには、次のコンポーネントが必要です。

-

Microsoft Office Developer Tools が含まれているエディションの Visual Studio 2012。詳細については、「[Office ソリューションを開発できるようにコンピューターを構成する](bb398242\(v=vs.110\).md)」を参照してください。
  • Word 2013 または Word 2010。

プロジェクトの作成

Visual Studio で新しい Word アドイン プロジェクトを作成するには

  1. Visual Studio を起動します。

  2. [ファイル] メニューの [新規作成] をポイントし、[プロジェクト] をクリックします。

  3. テンプレート ペインで、または [Visual C#] **[Visual Basic]を展開し、[Office/SharePoint]**を展開します。

  4. [Office/SharePoint] の展開したノードの下で、[Office Add-ins] のノードを選択します。

  5. プロジェクト テンプレートの一覧で、[Word 2010 アドイン] または [Word 2013 アドイン] を選択します。

  6. [プロジェクト名] ボックスに「FirstWordAddIn」と入力します。

  7. [OK] をクリックします。

    Visual Studio により FirstWordAddIn プロジェクトが作成され、ThisAddIn コード ファイルがエディターで開かれます。

保存する文書にテキストを追加するコードの記述

次に、ThisAddIn コード ファイルにコードを追加します。この新しいコードでは、Word のオブジェクト モデルを使用して、保存するそれぞれの文書に定型句を追加します。ThisAddIn コード ファイルには、次のコードが既定で含まれています。

  • ThisAddIn クラスの部分定義。このクラスは、コードのエントリ ポイントを提供し、Word のオブジェクト モデルへのアクセスを提供します。詳細については、「アプリケーション レベルのアドインのプログラミング」を参照してください。ThisAddIn クラスの残りの部分は、変更することができない非表示のコード ファイルに定義されています。

  • ThisAddIn_Startup イベント ハンドラーおよび ThisAddIn_Shutdown イベント ハンドラー。これらのイベント ハンドラーは、Word がアドインを読み込むときとアンロードするときに呼び出されます。これらのイベント ハンドラーを使用して、読み込まれるときにはアドインを初期化し、アンロードされるときにはアドインが使用したリソースをクリーンアップします。詳細については、「Office プロジェクトのイベント」を参照してください。

保存する文書にテキストの段落を追加するには

  1. ThisAddIn コード ファイルで、次のコードを ThisAddIn クラスに追加します。この新しいコードでは、文書が保存されるときに発生する DocumentBeforeSave イベントのイベント ハンドラーを定義します。

    ユーザーが文書を保存すると、イベント ハンドラーによって新しいテキストが文書の先頭に追加されます。

    Private Sub Application_DocumentBeforeSave(ByVal Doc As Word.Document, ByRef SaveAsUI As Boolean, _
        ByRef Cancel As Boolean) Handles Application.DocumentBeforeSave
        Doc.Paragraphs(1).Range.InsertParagraphBefore()
        Doc.Paragraphs(1).Range.Text = "This text was added by using code."
    End Sub
    
    void Application_DocumentBeforeSave(Word.Document Doc, ref bool SaveAsUI, ref bool Cancel)
    {
        Doc.Paragraphs[1].Range.InsertParagraphBefore();
        Doc.Paragraphs[1].Range.Text = "This text was added by using code.";
    }
    

    [!メモ]

    このコードでは、インデックス値 1 を使用して、Paragraphs コレクション内の最初の段落にアクセスします。Visual Basic や Visual C# ではインデックス番号が 0 から始まる配列が使用されますが、Word オブジェクト モデルのほとんどのコレクションでは、配列の下位のインデックスは 1 から始まります。詳細については、「Office ソリューションのコードの記述」を参照してください。

  2. C# を使用している場合は、次の必須のコードを ThisAddIn_Startup イベント ハンドラーに追加します。このコードは、Application_DocumentBeforeSave イベント ハンドラーを DocumentBeforeSave イベントに接続するために使用します。

    this.Application.DocumentBeforeSave += 
        new Word.ApplicationEvents4_DocumentBeforeSaveEventHandler(Application_DocumentBeforeSave);
    

保存時に文書を変更するために、前のコード例では次のオブジェクトを使用しています。

プロジェクトのテスト

プロジェクトをテストするには

  1. F5 キーを押して、プロジェクトをビルドおよび実行します。

    プロジェクトをビルドすると、コードはアセンブリにコンパイルされ、プロジェクトのビルド出力フォルダーに保存されます。さらに Visual Studio は、Word がアドインを検出して読み込むようにする一連のレジストリ エントリを作成し、アドインを実行できるように開発用コンピューター上のセキュリティを設定します。詳細については、「Office ソリューションのビルド」を参照してください。

  2. Word で、アクティブな文書を保存します。

  3. 次のテキストが文書に追加されることを確認します。

    This text was added by using code.

  4. Word を終了します。

プロジェクトのクリーンアップ

プロジェクトの開発を完了したら、アドイン アセンブリ、レジストリ エントリ、およびセキュリティ設定を開発用コンピューターから削除します。この操作を行わないと、今後も開発用コンピューター上で Word を起動するたびにアドインが実行されます。

開発用コンピューターから完成したプロジェクトをクリーンアップするには

  • Visual Studio で、[ビルド] メニューの [ソリューションのクリーン] をクリックします。

次の手順

Word 用の基本的なアプリケーション レベルのアドインを作成した後は、アドインの作成方法の詳細について、以下のトピックを参照してください。

参照

概念

Office ソリューションの開発の概要

その他の技術情報

Word ソリューション

アプリケーション レベルのアドインのプログラミング

Word オブジェクト モデルの概要

Office UI のカスタマイズ

Office ソリューションのビルド

Office ソリューションの配置

Office プロジェクト テンプレートの概要