Occorrenze di una stringa di testo all’interno di un documento (Microsoft Word)
Marc sta cercando il modo più veloce ed efficiente, all’interno di una macro, per determinare il conteggio di quante volte una particolare stringa di testo ricorre all’interno di un documento. Purtroppo non c’è modo di farlo con un semplice comando o due; è invece necessario “scorrere” un documento utilizzando la funzionalità Trova e sostituisci di Word.
Innanzitutto, crea una copia temporanea del documento in modo da non correre il rischio di rovinare il documento originale. Quindi utilizza una variabile nella macro per contare il numero di volte in cui il testo desiderato viene sostituito e incrementa la variabile ogni volta che si verifica una sostituzione. Nell’esempio seguente, il numero di volte che finirà nella variabile Sostituzioni.
È quindi possibile utilizzare il valore o convertire il valore in una stringa per visualizzarlo.
Sub CountReplacements Dim Replacements As Integer Replacements = 0 Selection.Find.ClearFormatting Selection.Find.Replacement.ClearFormatting With Selection.Find .Text = InputBox("Enter the text you want to find:") .Replacement.Text = InputBox("Enter the replacement text:") .Forward = True .Wrap = wdFindContinue .Format = False .Execute Replace:=wdReplaceOne Do Until Not .Found .Execute Replace:=wdReplaceOne Replacements = Replacements + 1 Selection.MoveRight Unit:=wdCharacter, Count:=1 Loop If Replacements <> 0 Then MsgBox _ "" & .Text & " has been replaced " & _ CStr(Replacements) & " times with " & _ .Replacement.Text Else MsgBox .Text & " was not found in the document/selection." End If End With End Sub
_Nota: _
Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti WordTips), ho preparato una pagina speciale che include informazioni utili.
WordTips è la tua fonte di formazione economica su Microsoft Word.
(Microsoft Word è il software di elaborazione testi più popolare al mondo.) Questo suggerimento (3368) si applica a Microsoft Word 97, 2000, 2002 e 2003. È possibile trovare una versione di questo suggerimento per l’interfaccia a nastro di Word (Word 2007 e più tardi) qui: