プログラムによってドキュメント内の範囲を定義および選択する

Microsoft Office Word 文書内に範囲を定義するには、Range オブジェクトを使用します。 文書全体を選択するには、Range オブジェクトの Select メソッドを使用する方法や、Document クラス (ドキュメント レベルのカスタマイズの場合) または Document クラス (VSTO アドインの場合) の Content プロパティを使用する方法など、いくつかの方法があります。

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

範囲を定義する

次の使用例は、作業中の文書の最初の 7 文字 (非印刷文字を含む) で構成される新しい Range オブジェクトの作成方法を示します。 次に、範囲内のテキストを選択します。

ドキュメント レベルのカスタマイズで範囲を定義するには

  1. 文書に範囲を追加するには、Document クラスの Range メソッドに開始文字と終了文字を渡します。 このコード例を使用するには、プロジェクトの ThisDocument クラスからコードを実行します。

    object start = 0; 
    object end = 7; 
    Word.Range rng = this.Range(ref start, ref end); 
    
    rng.Select();
    

VSTO アドインを使用して範囲を定義するには

  1. 文書に範囲を追加するには、Document クラスの Range メソッドに開始文字と終了文字を渡します。 作業中の文書に範囲を追加するコード例を次に示します。 このコード例を使用するには、プロジェクトの ThisAddIn クラスからコードを実行します。

    Word.Range rng = this.Application.ActiveDocument.Range(0, 7);
    
    rng.Select();
    

ドキュメント レベルのカスタマイズで範囲を選択するには

次の例は、Range オブジェクトの Select メソッドを使用して、または Document クラスの Content プロパティを使用して文書全体を選択する方法を示しています。

Select メソッドを使用して文書全体を範囲として選択するには

  1. 文書全体を含む RangeSelect メソッドを使用します。 次のコード例を使用するには、プロジェクトの ThisDocument クラスからコードを実行します。

    object start = this.Content.Start;
    object end = this.Content.End;
    
    this.Range(ref start, ref end).Select();
    

Content プロパティを使用して文書全体を範囲として選択するには

  1. Content プロパティを使用して、文書全体を含む範囲を定義します。

    this.Content.Select();
    

    また、他のオブジェクトのメソッドとプロパティを使用して範囲を定義することもできます。

作業中の文書の文を選択するには

  1. Sentences コレクション使用して範囲を設定します。 選択する文のインデックスを使用します。

    Word.Range s2 = this.Sentences[2]; 
    s2.Select();
    

    文を選択するもう 1 つの方法として、範囲の開始値と終了値を手動で設定する方法があります。

開始値と終了値を手動で設定して文を選択するには

  1. 範囲変数を作成します。

    Word.Range rng;
    
  2. 文書内に少なくとも 2 つの文があることを確認し、範囲の Start 引数と End 引数を設定した後、その範囲を選択します。

    if (this.Sentences.Count >= 2) 
    {
        object startLocation = this.Sentences[2].Start; 
        object endLocation = this.Sentences[2].End; 
    
        // Supply a Start and End value for the Range. 
        rng = this.Range(ref startLocation, ref endLocation); 
    
        // Select the Range.
        rng.Select();
    }
    

VSTO アドインを使用して範囲を選択する

次の例は、Range オブジェクトの Select メソッドを使用して、または Document クラスの Content プロパティを使用して文書全体を選択する方法を示しています。

Select メソッドを使用して文書全体を範囲として選択するには

  1. 文書全体を含む RangeSelect メソッドを使用します。 次のコード例では、作業中の文書の内容を選択します。 このコード例を使用するには、プロジェクトの ThisAddIn クラスからコードを実行します。

    this.Application.ActiveDocument.Range(
        this.Application.ActiveDocument.Content.Start,
        this.Application.ActiveDocument.Content.End).Select();
    

Content プロパティを使用して文書全体を範囲として選択するには

  1. Content プロパティを使用して、文書全体を含む範囲を定義します。

    this.Application.ActiveDocument.Content.Select();
    

    また、他のオブジェクトのメソッドとプロパティを使用して範囲を定義することもできます。

作業中の文書の文を選択するには

  1. Sentences コレクション使用して範囲を設定します。 選択する文のインデックスを使用します。

    Word.Range s2 = this.Application.ActiveDocument.Sentences[2];
    s2.Select();
    

    文を選択するもう 1 つの方法として、範囲の開始値と終了値を手動で設定する方法があります。

開始値と終了値を手動で設定して文を選択するには

  1. 範囲変数を作成します。

    Word.Range rng;
    
  2. 文書内に少なくとも 2 つの文があることを確認し、範囲の Start 引数と End 引数を設定した後、その範囲を選択します。

    Word.Document document = this.Application.ActiveDocument;
    
    if (document.Sentences.Count >= 2)
    {
        object startLocation = document.Sentences[2].Start;
        object endLocation = document.Sentences[2].End;
    
        // Supply a Start and End value for the Range. 
        rng = document.Range(ref startLocation, ref endLocation);
    
        // Select the Range.
        rng.Select();
    }