Condividi tramite


Procedura: recuperare le selezioni dopo le ricerche

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 effettua un'operazione di ricerca e sostituzione di testo in un documento, può rivelarsi utile ripristinare la selezione originale dell'utente dopo il completamento della ricerca.

Nel codice della routine di esempio vengono utilizzati due oggetti Range. Uno consente di archiviare l'oggetto Selection corrente e l'altro consente di impostare l'intero documento come intervallo di ricerca.

Per ripristinare la selezione originale dell'utente dopo una ricerca

  1. Creare gli oggetti Range per il documento e la selezione corrente.

    Dim start As Word.Range = Application.Selection.Range
    Dim searchArea As Word.Range = Application.ActiveDocument.Range
    
    Word.Range start = Application.Selection.Range; 
    Word.Range searchArea = Application.ActiveDocument.Range(ref missing, ref missing); 
    
  2. Eseguire l'operazione di ricerca e sostituzione.

    searchArea.Find.ClearFormatting()
    searchArea.Find.Text = "find me"
    
    searchArea.Find.Replacement.ClearFormatting()
    searchArea.Find.Replacement.Text = "Found"
    
    searchArea.Find.Execute(Replace:=Word.WdReplace.wdReplaceAll)
    
    searchArea.Find.ClearFormatting(); 
    searchArea.Find.Text = "find me"; 
    
    searchArea.Find.Replacement.ClearFormatting(); 
    searchArea.Find.Replacement.Text = "Found"; 
    
    object replaceAll = Word.WdReplace.wdReplaceAll; 
    
    searchArea.Find.Execute(
        ref missing, ref missing, ref missing, ref missing, ref missing,
        ref missing, ref missing, ref missing, ref missing, ref missing,
        ref replaceAll, ref missing, ref missing, ref missing, ref missing);
    
  3. Selezionare l'intervallo iniziale per ripristinare la selezione originale dell'utente.

    start.Select()
    
    start.Select(); 
    

Nell'esempio riportato di seguito viene illustrato il metodo completo.

Esempio

Friend Sub ReplaceRestoreSelection()
    Dim start As Word.Range = Application.Selection.Range
    Dim searchArea As Word.Range = Application.ActiveDocument.Range

    searchArea.Find.ClearFormatting()
    searchArea.Find.Text = "find me"

    searchArea.Find.Replacement.ClearFormatting()
    searchArea.Find.Replacement.Text = "Found"

    searchArea.Find.Execute(Replace:=Word.WdReplace.wdReplaceAll)

    start.Select()
End Sub
internal void ReplaceRestoreSelection() 
{ 
    Word.Range start = Application.Selection.Range; 
    Word.Range searchArea = Application.ActiveDocument.Range(ref missing, ref missing); 

    searchArea.Find.ClearFormatting(); 
    searchArea.Find.Text = "find me"; 

    searchArea.Find.Replacement.ClearFormatting(); 
    searchArea.Find.Replacement.Text = "Found"; 

    object replaceAll = Word.WdReplace.wdReplaceAll; 

    searchArea.Find.Execute(
        ref missing, ref missing, ref missing, ref missing, ref missing,
        ref missing, ref missing, ref missing, ref missing, ref missing,
        ref replaceAll, ref missing, ref missing, ref missing, ref missing);

    start.Select(); 
}

Vedere anche

Attività

Procedura: cercare e sostituire testo nei documenti

Procedura: cercare testo nei documenti

Procedura: impostare le opzioni di ricerca in Word

Procedura: scorrere in ciclo gli elementi trovati nei documenti

Concetti

Informazioni sui parametri facoltativi nelle soluzioni Office