Gewusst wie: Programmgesteuertes Definieren und Markieren von Bereichen in Dokumenten

Sie können mithilfe eines Range-Objekts in einem Microsoft Office Word-Dokument einen Bereich definieren.Sie können das gesamte Dokument auf verschiedene Arten markieren, zum Beispiel mit der Select-Methode des Range-Objekts oder mit der Content-Eigenschaft der Microsoft.Office.Tools.Word.Document-Klasse (in einer Anpassung auf Dokumentebene) oder mit der Microsoft.Office.Interop.Word.Document-Klasse (in einem Add-In auf Anwendungsebene).

Betrifft: Die Informationen in diesem Thema betreffen Projekte auf Dokument- und auf Anwendungsebene für Word 2013 und Word 2010. Weitere Informationen finden Sie unter Verfügbare Funktionen nach Office-Anwendung und Projekttyp.

Definieren eines Bereichs

Das folgende Beispiel veranschaulicht das Erstellen eines neuen Range-Objekts, das die ersten sieben Zeichen des aktiven Dokuments einschließlich der nicht druckbaren Zeichen enthält.Dann wird der Text innerhalb des Bereichs ausgewählt.

So definieren Sie einen Bereich in einer Anpassung auf Dokumentebene

  • Fügen Sie dem Dokument den Bereich hinzu, indem Sie der Range-Methode der Microsoft.Office.Tools.Word.Document-Klasse ein Start- und Endzeichen übergeben.Wenn Sie dieses Codebeispiel verwenden möchten, führen Sie es von der ThisDocument-Klasse im Projekt aus.

    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();
    

So definieren Sie einen Bereich mithilfe eines Add-Ins auf Anwendungsebene

  • Fügen Sie dem Dokument den Bereich hinzu, indem Sie der Range-Methode der Microsoft.Office.Interop.Word.Document-Klasse ein Start- und Endzeichen übergeben.Im folgenden Codebeispiel wird dem aktiven Dokument ein Bereich hinzugefügt.Wenn Sie dieses Codebeispiel verwenden möchten, führen Sie es von der ThisAddIn-Klasse im Projekt aus.

    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();
    

Markieren eines Bereichs in einer Anpassung auf Dokumentebene

In den folgenden Beispielen wird das Markieren des gesamten Dokuments mithilfe der Select-Methode eines Range-Objekts oder mithilfe der Content-Eigenschaft der Microsoft.Office.Tools.Word.Document-Klasse veranschaulicht.

So markieren Sie das gesamte Dokument mit der Select-Methode als Bereich

  • Verwenden Sie die Select-Methode von einem Range, der das gesamte Dokument enthält.Wenn Sie das folgende Codebeispiel verwenden möchten, führen Sie es von der ThisDocument-Klasse im Projekt aus.

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

So markieren Sie das gesamte Dokument mit der Content-Eigenschaft als Bereich

  • Verwenden Sie die Content-Eigenschaft, um einen Bereich zu definieren, der das gesamte Dokument umfasst.

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

Sie können einen Bereich auch mit den Methoden und Eigenschaften anderer Objekte definieren.

So markieren Sie einen Satz im aktiven Dokument

  • Legen Sie den Bereich mit der Sentences-Auflistung fest.Verwenden Sie den Index des Satzes, den Sie markieren möchten.

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

Außerdem können Sie einen Satz auch markieren, indem Sie den Start- und Endwert für den Bereich manuell festlegen.

So markieren Sie einen Satz durch manuelle Auswahl des Start- und Endwerts

  1. Erstellen Sie eine Variable für den Bereich.

    Dim rng As Word.Range
    
    Word.Range rng; 
    
  2. Überprüfen Sie, ob das Dokument mindestens zwei Sätze enthält. Legen Sie das Start-Argument und das End-Argument des Bereichs fest, und markieren Sie anschließend den Bereich.

    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();
    }
    

Markieren eines Bereichs mithilfe eines Add-Ins auf Anwendungsebene

In den folgenden Beispielen wird das Markieren des gesamten Dokuments mithilfe der Select-Methode eines Range-Objekts oder mithilfe der Content-Eigenschaft der Microsoft.Office.Interop.Word.Document-Klasse veranschaulicht.

So markieren Sie das gesamte Dokument mit der Select-Methode als Bereich

  • Verwenden Sie die Select-Methode von einem Range, der das gesamte Dokument enthält.Im folgenden Codebeispiel wird der Inhalt des aktiven Dokuments markiert.Wenn Sie dieses Codebeispiel verwenden möchten, führen Sie es von der ThisAddIn-Klasse im Projekt aus.

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

So markieren Sie das gesamte Dokument mit der Content-Eigenschaft als Bereich

  • Verwenden Sie die Content-Eigenschaft, um einen Bereich zu definieren, der das gesamte Dokument umfasst.

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

Sie können einen Bereich auch mit den Methoden und Eigenschaften anderer Objekte definieren.

So markieren Sie einen Satz im aktiven Dokument

  • Legen Sie den Bereich mit der Sentences-Auflistung fest.Verwenden Sie den Index des Satzes, den Sie markieren möchten.

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

Außerdem können Sie einen Satz auch markieren, indem Sie den Start- und Endwert für den Bereich manuell festlegen.

So markieren Sie einen Satz durch manuelle Auswahl des Start- und Endwerts

  1. Erstellen Sie eine Variable für den Bereich.

    Dim rng As Word.Range
    
    Word.Range rng;
    
  2. Überprüfen Sie, ob das Dokument mindestens zwei Sätze enthält. Legen Sie das Start-Argument und das End-Argument des Bereichs fest, und markieren Sie anschließend den Bereich.

    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();
    }
    

Siehe auch

Aufgaben

Gewusst wie: Programmgesteuertes Erweitern von Bereichen in Dokumenten

Gewusst wie: Programmgesteuertes Abrufen von Start- und Endzeichen in Bereichen

Gewusst wie: Programmgesteuertes Erweitern von Bereichen in Dokumenten

Gewusst wie: Programmgesteuertes Zurücksetzen von Bereichen in Word-Dokumenten

Gewusst wie: Programmgesteuertes Reduzieren von Bereichen oder Markierungen in Dokumenten

Gewusst wie: Programmgesteuertes Ausschließen von Absatzmarken beim Erstellen von Bereichen

Weitere Ressourcen

Übersicht über das Word-Objektmodell