Procedura: ripristinare le selezioni dopo le ricerche
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.
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.
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
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);
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);
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