Procedura: comprimere intervalli o selezioni in documenti

Se si utilizza un oggetto Range o Selection, può rivelarsi utile modificare la selezione in un punto di inserimento prima di inserire del testo, in modo da evitare la sovrascrittura del testo esistente. Gli oggetti Range e Selection dispongono di un metodo Collapse che utilizza i valori di enumerazioni WdCollapseDirection:

  • wdCollapseStart comprime la selezione nella parte iniziale. Costituisce l'impostazione predefinita se non viene specificato un valore di enumerazione.

  • wdCollapseEnd comprime la selezione nella parte finale.

Si applica a: le informazioni fornite in questo argomento sono valide per i progetti a livello di documento e di applicazione per Word 2007 e Word 2010. Per ulteriori informazioni, vedere Funzionalità disponibili in base ai tipi di progetto e applicazioni di Office.

Per comprimere un intervallo e inserire nuovo testo

  1. Creare un oggetto Range costituito dal primo paragrafo nel documento.

    L'esempio di codice seguente può essere utilizzato in una personalizzazione a livello di documento.

    Dim rng As Word.Range = Me.Paragraphs(1).Range
    
    Word.Range rng = this.Paragraphs[1].Range; 
    

    L'esempio di codice seguente può essere utilizzato in un componente aggiuntivo a livello di applicazione. In questo codice viene utilizzato il documento attivo.

    Dim rng As Word.Range = Me.Application.ActiveDocument.Paragraphs(1).Range
    
    Word.Range rng = this.Application.ActiveDocument.Paragraphs[1].Range;
    
  2. Utilizzare il valore di enumerazione wdCollapseStart per comprimere l'intervallo.

    rng.Collapse(Word.WdCollapseDirection.wdCollapseStart)
    
    rng.Collapse(Word.WdCollapseDirection.wdCollapseStart); 
    
  3. Inserire il nuovo testo.

    rng.Text = " New Text "
    
    rng.Text = " New Text ";
    
  4. Selezionare Range.

    rng.Select()
    
    rng.Select();
    

Se si utilizza il valore di enumerazione wdCollapseEnd, il testo viene inserito all'inizio del paragrafo successivo.

rng.Collapse(Word.WdCollapseDirection.wdCollapseEnd)
rng.Collapse(Word.WdCollapseDirection.wdCollapseEnd);

Contrariamente a quanto potrebbe prevedersi, la nuova frase non viene inserita prima del segno di paragrafo, poiché questo è incluso nell'intervallo originale. Per ulteriori informazioni, vedere Procedura: escludere i segni di paragrafo durante l'inserimento di intervalli.

Esempio di personalizzazione a livello di documento

Per comprimere un intervallo in una personalizzazione a livello di documento

  • Nel seguente esempio viene illustrato il metodo completo per una personalizzazione a livello di documento. Per utilizzare il codice, è necessario eseguirlo dalla classe ThisDocument nel progetto.

    Dim rng As Word.Range = Me.Paragraphs(1).Range
    
    rng.Collapse(Word.WdCollapseDirection.wdCollapseStart)
    
    rng.Text = " New Text "
    rng.Select()
    
    Word.Range rng = this.Paragraphs[1].Range; 
    
    rng.Collapse(Word.WdCollapseDirection.wdCollapseStart); 
    
    rng.Text = " New Text ";
    rng.Select();
    

Esempio di componente aggiuntivo a livello di applicazione

Per comprimere un intervallo in un componente aggiuntivo a livello di applicazione

  • Nel seguente esempio viene illustrato il metodo completo per un componente aggiuntivo a livello di applicazione. Per utilizzare il codice, è necessario eseguirlo dalla classe ThisAddIn nel progetto.

    Dim rng As Word.Range = Me.Application.ActiveDocument.Paragraphs(1).Range
    
    rng.Collapse(Word.WdCollapseDirection.wdCollapseStart)
    
    rng.Text = " New Text "
    rng.Select()
    
    Word.Range rng = this.Application.ActiveDocument.Paragraphs[1].Range;
    
    rng.Collapse(Word.WdCollapseDirection.wdCollapseStart);
    
    rng.Text = " New Text ";
    rng.Select();
    

Vedere anche

Attività

Procedura: inserire testo nei documenti di Word

Procedura: definire e selezionare intervalli nei documenti

Procedura: recuperare i caratteri iniziale e finale negli intervalli

Procedura: escludere i segni di paragrafo durante l'inserimento di intervalli

Procedura: estendere gli intervalli nei documenti

Procedura: reimpostare gli intervalli nei documenti di Word