Condividi tramite


Procedura: cercare e sostituire testo nei documenti

Utilizzare un oggetto Find per scorrere un documento di Microsoft Office Word allo scopo di ricercare elementi di testo, formattazione o stile specifici e utilizzare la proprietà Replacement per sostituire tutti gli elementi trovati.

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 seguente viene eseguita una ricerca nella selezione corrente e vengono sostituite tutte le occorrenze della stringa find me con la stringa Found. Per utilizzare questo esempio di codice, eseguirlo dalla classe ThisDocument o ThisAddIn del progetto.

Esempio

Private Sub SearchReplace()
    Dim FindObject As Word.Find = Application.Selection.Find
    With FindObject
        .ClearFormatting()
        .Text = "find me"
        .Replacement.ClearFormatting()
        .Replacement.Text = "Found"
        .Execute(Replace:=Word.WdReplace.wdReplaceAll)
    End With
End Sub
private void SearchReplace()
{
    Word.Find findObject = Application.Selection.Find;
    findObject.ClearFormatting();
    findObject.Text = "find me";
    findObject.Replacement.ClearFormatting();
    findObject.Replacement.Text = "Found";

    object replaceAll = Word.WdReplace.wdReplaceAll;
    findObject.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);
}

Compilazione del codice

La classe Find dispone di un metodo ClearFormatting. Anche la classe Replacement dispone di un proprio metodo ClearFormatting. Quando si eseguono operazioni di ricerca e sostituzione, è necessario utilizzare il metodo ClearFormatting di entrambi gli oggetti. Se si utilizza questo metodo solo nell'oggetto Find, la sostituzione del testo può produrre risultati imprevisti.

Utilizzare il metodo Execute dell'oggetto Find per sostituire ogni elemento trovato. Per specificare quali elementi sostituire, utilizzare il parametro Replace. Per il parametro è possibile specificare uno dei valori WdReplace seguenti:

  • wdReplaceAll consente di sostituire tutti gli elementi trovati.

  • wdReplaceNone fa sì che nessun elemento trovato venga sostituito.

  • wdReplaceOne consente di sostituire il primo elemento trovato.

Vedere anche

Attività

Procedura: cercare testo nei documenti

Procedura: impostare le opzioni di ricerca in Word

Procedura: scorrere in ciclo gli elementi trovati nei documenti

Procedura: ripristinare le selezioni dopo le ricerche

Concetti

Parametri facoltativi nelle soluzioni Office