Kate necesita generar un recuento de palabras solo para los encabezados y pies de página de un documento, y no sabe cómo hacerlo.

No hay una forma automática de hacerlo, pero puede desarrollar una macro que calcule el recuento. VBA le permite recorrer fácilmente los encabezados en cada sección de su documento, y luego puede determinar cuántas palabras hay en cada encabezado. Un enfoque es utilizar una macro como la siguiente:

Sub CntHeaderWords()

Dim s As Section     Dim h As HeaderFooter     Dim sRaw As String     Dim Cnt As Long     Dim J As Integer

Cnt = 0     For Each s In ActiveDocument.Sections         For Each h In s.Headers             For J = 1 To h.Range.Words.Count                 sRaw = h.Range.Words(J)

sRaw = Trim(sRaw)

If sRaw = vbCrLf Then sRaw = ""

If sRaw = vbCr Then sRaw = ""

If sRaw = vbLf Then sRaw = ""

If Len(sRaw) > 0 Then Cnt = Cnt + 1             Next J         Next h     Next s

MsgBox Cnt & " words in headers"

End Sub

Cuando ejecuta esta macro, recorre cada sección del documento y luego cada encabezado de esa sección. El recuento de palabras se determina para cada encabezado y se agrega a la variable Cnt. Cuando la macro está completa, muestra el recuento de palabras para los encabezados del documento.

Hay un par de cosas interesantes a tener en cuenta sobre esta macro.

Primero, dado que puede determinar una propiedad de Recuento para la colección de Palabras para cada encabezado, podría pensar que puede simplemente sumar todos esos recuentos para determinar el recuento general de palabras. El problema es que incluso si no hay encabezado para una sección, Word devuelve un recuento de palabras de 1 para un encabezado «implícito». Es por eso que la macro realmente examina cada palabra en el encabezado, y si no es más que un retorno de carro o un avance de línea, entonces no se incluye en el recuento.

Otro elemento a tener en cuenta es que si tiene algún signo de puntuación en el encabezado, cada signo de puntuación cuenta como una palabra. Por ejemplo, si tiene el encabezado «Todos los derechos reservados», Word considera que son tres palabras. Si el encabezado es «Todos los derechos reservados». (con el punto final), Word considera que son cuatro palabras. El resultado es que si cree que puede haber signos de puntuación en los encabezados, es posible que desee ajustar el código macro para que no cuente la puntuación.

Esta macro solo devuelve un recuento de palabras para los encabezados de un documento. Si desea, en cambio, un recuento de palabras tanto para los encabezados como para los pies de página, puede ajustar la macro de esta manera:

Sub CntHFWords()

Dim s As Section     Dim h As HeaderFooter     Dim f As HeaderFooter     Dim sRaw As String     Dim HdCnt As Long     Dim FtCnt As Long     Dim J As Integer

HdCnt = 0     FtCnt = 0     For Each s In ActiveDocument.Sections         For Each h In s.Headers             For J = 1 To h.Range.Words.Count                 sRaw = h.Range.Words(J)

sRaw = Trim(sRaw)

If sRaw = vbCrLf Then sRaw = ""

If sRaw = vbCr Then sRaw = ""

If sRaw = vbLf Then sRaw = ""

If Len(sRaw) > 0 Then HdCnt = HdCnt + 1             Next J         Next h

For Each f In s.Footers             For J = 1 To f.Range.Words.Count                 sRaw = f.Range.Words(J)

sRaw = Trim(sRaw)

If sRaw = vbCrLf Then sRaw = ""

If sRaw = vbCr Then sRaw = ""

If sRaw = vbLf Then sRaw = ""

If Len(sRaw) > 0 Then FtCnt = FtCnt + 1             Next J         Next f     Next s

sRaw = "Header words: " & HdCnt & vbCrLf     sRaw = sRaw & "Footer words: " & FtCnt & vbCrLf     sRaw = sRaw & "Total words: " & HdCnt + FtCnt     MsgBox sRaw End Sub

Esta versión de la macro aplica exactamente la misma técnica de recuento a cada pie de página que a cada encabezado, mostrando los recuentos individuales y totales al final de la macro.

_Nota: _

Si desea saber cómo usar las macros descritas en esta página (o en cualquier otra página de los sitios WordTips), he preparado una página especial que incluye información útil.

link: / wordribbon-WordTipsMacros [Haga clic aquí para abrir esa página especial en una nueva pestaña del navegador].

WordTips es su fuente de formación rentable en Microsoft Word.

(Microsoft Word es el software de procesamiento de texto más popular del mundo). Este consejo (10285) se aplica a Microsoft Word 2007, 2010 y 2013.