次の方法で共有


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

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

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

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

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

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

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

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

注意

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

必須コンポーネント

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

-

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

プロジェクトの作成

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

  1. Visual Studio を起動します。

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

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

  4. 展開した [Office] ノードの下で、[2007] ノード (Word 2007 がインストールされている場合) または [2010] ノード (Word 2010 がインストールされている場合) を選択します。

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

  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 ソリューションでの Visual Basic を使用したプログラミングと Visual C# を使用したプログラミング」を参照してください。

  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 ソリューションのビルドとデバッグ