Uno dei vantaggi dei campi è che puoi inserire informazioni dinamiche all’interno del tuo documento. Quando il campo viene aggiornato, viene sostituito con qualsiasi informazione corrente relativa al campo in uso. Ad esempio, puoi utilizzare il campo NumWords per inserire il numero di parole nel documento. Quando il campo viene aggiornato, viene sostituito con il numero di parole presenti nel documento.

Se vuoi scoprire il numero di parole in una sezione e inserirla dinamicamente in un documento, allora sei sfortunato. Non esiste alcun campo che restituirà queste informazioni. Puoi scoprirlo manualmente selezionando il testo nella sezione e poi scegliendo lo strumento Conteggio parole, ma questo ovviamente non soddisfa il desiderio di avere un valore che possa essere inserito nel tuo documento e aggiornato automaticamente.

Ciò significa che dovrai fare affidamento su una macro per ottenere il conteggio delle parole desiderato. Se vuoi solo conoscere il numero di parole in ogni sezione del tuo documento, la seguente macro può essere utile.

Sub WordCount()

Dim NumSec As Integer     Dim S As Integer     Dim Summary As String

NumSec = ActiveDocument.Sections.Count     Summary = "Word Count" & vbCrLf

For S = 1 To NumSec         Summary = Summary & "Section " & S & ": " _           & ActiveDocument.Sections(S).Range.Words.Count _           & vbCrLf     Next

Summary = Summary & "Document: " & _       ActiveDocument.Range.Words.Count     MsgBox Summary End Sub

Questo semplicemente passa attraverso ogni sezione, determina il conteggio delle parole in quella sezione e visualizza le informazioni di riepilogo in una finestra di messaggio.

Ciò non fornisce un modo per inserire dinamicamente le informazioni nel documento, ma fornisce un’illustrazione di come trovare il conteggio delle parole di una singola sezione.

Una variazione della tecnica consente di inserire automaticamente il conteggio delle parole per una sezione specifica nella posizione di un segnalibro all’interno del documento. Supponiamo che tu abbia un segnalibro chiamato “WordCount” che hai definito. Questo segnalibro specifica la posizione in cui desideri il numero di parole nella seconda sezione del documento. La seguente macro determinerà il conteggio delle parole per la sezione specificata e quindi inserirà il testo nella posizione del segnalibro.

Sub InsertWordCount()

Dim oRange As Word.Range     Dim sBookmarkName As String     Dim sTemp As String

sBookmarkName = "WordCount"

With ActiveDocument         sTemp = Format(.Sections(2).Range.Words.Count, "0")

Set oRange = .Bookmarks(sBookmarkName).Range         oRange.Delete         oRange.InsertAfter Text:=sTemp         .Bookmarks.Add Name:=sBookmarkName, Range:=oRange     End With End Sub

La macro può essere facilmente chiamata da altre macro, come quella che viene eseguita quando il documento viene aperto, salvato o stampato. In questo modo il conteggio delle parole verrà aggiornato in tutte le normali ore in cui un campo viene aggiornato automaticamente.

WordTips è la tua fonte di formazione economica su Microsoft Word.

(Microsoft Word è il software di elaborazione testi più popolare al mondo.) Questo suggerimento (11098) si applica a Microsoft Word 2007 e 2010. Puoi trovare una versione di questo suggerimento per la vecchia interfaccia di menu di Word qui: Conteggio parole per una sezione .