次の方法で共有


方法: プログラムによって文書に複数の範囲を定義して選択する

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

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

範囲の定義

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

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

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

    Dim rng As Word.Range = Me.Range(Start:=0, End:=7)
    rng.Select()
    
    object start = 0; 
    object end = 7; 
    Word.Range rng = this.Range(ref start, ref end); 
    
    rng.Select();
    

アプリケーション レベルのアドインを使用して範囲を定義するには

  • 文書に範囲を追加するには、Microsoft.Office.Interop.Word.Document クラスの Range メソッドに開始文字と終了文字を渡します。アクティブ文書に範囲を追加するコード例を次に示します。このコード例を使用するには、プロジェクトの ThisAddIn クラスから実行します。

    Dim rng As Word.Range = Me.Application.ActiveDocument.Range(Start:=0, End:=7)
    rng.Select()
    
    Word.Range rng = this.Application.ActiveDocument.Range(0, 7);
    
    rng.Select();
    

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

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

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

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

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

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

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

    Me.Content.Select()
    
    this.Content.Select();
    

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

アクティブ文書の文を選択するには

  • 範囲を設定するには、Sentences コレクションを使用します。選択する文のインデックスを使用します。

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

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

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

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

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

    If Me.Sentences.Count >= 2 Then
    
        Dim startLocation As Object = Me.Sentences(2).Start
        Dim endLocation As Object = Me.Sentences(2).End
    
        ' Supply a Start and End value for the Range.
        rng = Me.Range(Start:=startLocation, End:=endLocation)
    
        ' Select the Range
        rng.Select()
    End If
    
    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();
    }
    

アプリケーション レベルのアドインによる範囲の選択

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

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

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

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

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

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

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

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

アクティブ文書の文を選択するには

  • 範囲を設定するには、Sentences コレクションを使用します。選択する文のインデックスを使用します。

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

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

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

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

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

    Dim document As Word.Document = Me.Application.ActiveDocument
    If document.Sentences.Count >= 2 Then
    
        Dim startLocation As Object = document.Sentences(2).Start
        Dim endLocation As Object = document.Sentences(2).End
    
        ' Supply a Start and End value for the Range.
        rng = document.Range(Start:=startLocation, End:=endLocation)
    
        ' Select the Range
        rng.Select()
    End If
    
    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();
    }
    

参照

処理手順

方法: プログラムによってドキュメント内の範囲を拡張する

方法: 範囲の開始文字と終了文字をプログラムによって取得する

方法: プログラムによってドキュメント内の範囲を拡張する

方法: プログラムによって Word 文書の範囲をリセットする

方法: プログラムによって文書内の範囲または選択範囲を縮小する

方法: 範囲を作成するときにプログラムによって段落記号を除外する

その他の技術情報

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