Recuento de palabras en Word con el control de cambios activado
Mi amigo el Dr. Macro, experto en rarología de Word, me suele confesar sus casos más extraños cuando coincidimos a la salida del trabajo. Ese día, al parar para reponernos en el club —el Dr. Macro tiene un gusto exquisito—, aprecié que se asomaba una sensación de triunfo bajo el aparente abatimiento.
— Hoy casi no lo consigo —me advirtió. Señaló el hielo de su Old fashioned y prosiguió:— ¿Sabes cuánto ocupa el hielo antes y después de deshacerse?
— ¿Quieres que te responda o me vas a contar una historia?
Me iba a contar una historia, por lo que daba igual mi respuesta.
Hoy le habían pedido un recuento de palabras, una pesadilla recurrente para muchos traductores y correctores que acuden a su consulta. Pero ese día había recibido un encargo especial: «— ¿Cómo puedo saber cuántas palabras tiene este texto mientras está activado el Control de cambios?»
— ¿Y para qué rayos quiere alguien saber eso? —le pregunté.
— Clientes —esa solía ser toda la explicación. Los clientes y sus exigencias.
— ¿Y no se puede averiguar calculando la diferencia entre original y final, con el propio Control de cambios? —solo me miró de reojo para advertirme que le estaba pisando su historia y que no, que esa respuesta no servía. Eso es una mirada de reojo bien cargada.
— Las palabras pueden ir cambiando, suprimiéndose, añadiéndose, pero el recuento de palabras no varía. Y ese dato es esencial para saber con precisión el volumen de un encargo, el espacio que te queda en la caja o cuánto texto nuevo te han añadido o… —y aquí el Dr. Macro tomó aire— … o quitado. Solo puedes averiguarlo guardando una copia y comparándola con el original de nuevo. Muy trabajoso para el día a día.
— Como el hielo del vaso, ¿no? —le dije señalando su copa. Quería saber qué relación guardaba esta macro con su trago favorito, para abreviar, por la curiosidad o por volver a casa temprano.
— Sí: el hielo va variando porque se derrite y también vas bebiéndolo. Esto necesitaba una macro que distinguiera entre las inserciones y las eliminaciones. Así tendría una solución perfecta.
— ¿Y cómo lo conseguiste? —Aquí le incomodé: se borró el triunfo y volvió de pleno el abatimiento.
— No lo conseguí. Le di mil vueltas, pero la macro no salía. Así que cuando quise ampliar mi consulta me topé con que Wyatt, Allen Wyatt, el tipo de WordTips, ya se me había adelantado. De hecho lo había hecho mucho antes, en el 2012… —y ahora volvió su media sonrisa de triunfo mirando al frente— … pero eso no lo sabe nadie más que tú. Mi paciente quedó realmente satisfecho. Te he puesto en copia para que veas el código de Wyatt.
Nos estrechamos las manos y nos saludamos hasta el próximo día. De camino a casa pensé que esperaba que a nadie que necesitara un recuento de palabras con el Control de cambios activado se le ocurriría ir al menú Vista, pulsar el botón Macros, elegir la opciónCrear y que en el editor de Visual Basic se le pasara por la cabeza pegar este código:
Sub GetTCStats()
Dim lInsertsWords As Long
Dim lInsertsChar As Long
Dim lDeletesWords As Long
Dim lDeletesChar As Long
Dim sTemp As String
Dim oRevision As Revision
lInsertsWords = 0
lInsertsChar = 0
lDeletesWords = 0
lDeletesChar = 0
For Each oRevision In ActiveDocument.Revisions
Select Case oRevision.Type
Case wdRevisionInsert
lInsertsChar = lInsertsChar + Len(oRevision.Range.Text)
lInsertsWords = lInsertsWords + oRevision.Range.Words.Count
Case wdRevisionDelete
lDeletesChar = lDeletesChar + Len(oRevision.Range.Text)
lDeletesWords = lDeletesWords + oRevision.Range.Words.Count
End Select
Next oRevision
sTemp = “Insertions” & vbCrLf
sTemp = sTemp & ” Words: ” & lInsertsWords & vbCrLf
sTemp = sTemp & ” Characters: ” & lInsertsChar & vbCrLf
sTemp = sTemp & “Deletions” & vbCrLf
sTemp = sTemp & ” Words: ” & lDeletesWords & vbCrLf
sTemp = sTemp & ” Characters: ” & lDeletesChar & vbCrLf
MsgBox sTemp
End Sub
… porque si alguien hiciera todo esto, además de conseguir un recuento mucho más preciso de su documento, el Dr. Macro sabría quién le habría traicionado. Y es mejor tenerle contento; el pobre hombre es tan feliz con estas cosas…
(Macro original de De Allen Wyatt)
Si os habéis quedado con ganas de más, encontraréis al Dr. Macro en:
Trucos avanzados de Word