Condividi tramite


Procedura: comprimere intervalli o selezioni in documenti

Aggiornamento: novembre 2007

Si applica a

Le informazioni contenute in questo argomento riguardano solo i progetti Visual Studio Tools per Office e le versioni di Microsoft Office specificati.

Tipo di progetto

  • Progetti a livello di documento

  • Progetti a livello di applicazione

Versione Microsoft Office

  • Word 2003

  • Word 2007

Per ulteriori informazioni, vedere la classe Funzionalità disponibili in base ai tipi di progetto e applicazione.

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.

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)
    
    object direction = Word.WdCollapseDirection.wdCollapseStart;
    rng.Collapse(ref direction); 
    
  3. Inserire il nuovo testo.

    rng.Text = " New Text "
    
    rng.Text = " New Text ";
    
  4. Selezionare l'oggetto 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)
direction = Word.WdCollapseDirection.wdCollapseEnd;
rng.Collapse(ref direction);

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; 
    
    object direction = Word.WdCollapseDirection.wdCollapseStart;
    rng.Collapse(ref direction); 
    
    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;
    
    object direction = Word.WdCollapseDirection.wdCollapseStart;
    rng.Collapse(ref direction);
    
    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