Cómo descubrir clichés mediante macros de Word


Los clichés literarios, esas expresiones que de tan gastadas conviene evitar, son como pequeñas garrapatas que se adhieren a nuestros textos y se camuflan tan bien que nos suelen pasar inadvertidos... pero no a nuestros lectores.


A cuento de ellos, hace unos días me encontré con un estupendo artículo «100 clichés lingüísticos que deberías evitar», firmado por Alex G. en el blog Inteligencia narrativa.

Me propuse revisar el borrador completo de mi novela después de leer varias veces la citada lista pero no me sirvió de nada ya que volvía a "tragarme" los clichés. Necesitaba algo más contundente, algo que no dependiera de mi subjetividad. Así fue como me acordé del post Check Your Writing For Adverbs And Other Problem Words: MS Word Macros del blog de Karen Woodward en el que se explicaba cómo mediante una macro de Word se podían resaltar un conjunto de palabras en un documento, sin necesidad de ir una a una mediante la función Buscar de Word.

Era un ejemplo perfecto de cómo la tecnología podía acudir en ayuda de la literatura: haciendo las oportunas modificaciones en la macro de Word de Karen Woodward podía hacer que automáticamente quedaran resaltados en el borrador de mi novela todos y cada uno de los 100 clichés de marras. Lo hice y funcionó.

A continuación detallaré paso a paso lo que tendrías que hacer. A los poco introducidos en este mundo de la informática les puede parecer algo muy laborioso, pero os aseguro que no lo es y, desde luego, el resultado obtenido merece el esfuerzo. He preparado estas instrucciones para Word 2007 por lo que debería de funcionar en la mayor parte de los programas Word que tengáis (salvo en Word 2008 para Mac ya que están desactivadas las macros). Aquí voy:

1) Abre el documento Word que quieras analizar.

2) En el menú «Vista», pulsa la ficha «Macros», la que está más a la derecha.

3) En la casilla «Nombre de la macro» de la ventana que se ha abierto, escribe Resaltar_clichés (en realidad valdría cualquier expresión, siempre que no se dejen espacios entre las palabras) y pulsa el botón «Crear».

4) Se abrirá una ventana con el editor de Visual Basic. En el cuerpo principal aparecerá algo así:

Sub Resaltar_clichés()
'
' Resaltar_clichés Macro
'
'

End Sub

5) Borra manualmente todo el texto anterior (desde el «Sub» del comienzo hasta el del final) y, mediante copiar y pegar, incluye el texto siguiente:

Sub Resaltar_clichés()

Dim range As range
Dim i As Long
Dim TargetList
Dim Encontrado As Integer

Encontrado = 0

'180 clichés a 10/9/2015
TargetList = Array("abnegado cumplidor", "abundante documentación", "accidente fortuito", "acelerar a tope", "acostarse muy tarde", "a grito pelado", "adhesión inquebrantable", "al filo de la noticia", "al filo de la navaja", "amarga derrota", "amarga despedida", "amasijo de hierros", "ambos dos", "amistad inquebrantable", "amor a primera vista", "amplio abanico de posibilidades", "aparatoso vendaje", "antiguas pesetas", "aprovechar el tiempo", "asesino sanguinario", "atasco monumental", "aterido de frío", "a toda velocidad", _
"baño de masas", "baño de multitudes", "baño de sangre", "bebedor habitual", "belleza exquisita", "belleza sublime", "bendecida y afortunada", "blanca Navidad", "blanco como la nieve", "blanco inmaculado", "breves minutos", "brilló con luz propia", "brilló por su ausencia", "brutal agresión", "brutal paliza", "buena suerte", _
"calor abrasador", "calor de justicia", "cobrarse una vida", "cojear ostensiblemente", "comida basura", "comida exquisita", "comida rápida", "conocido por todo el mundo", "cortina de humo", "crecimiento negativo", "criando malvas", "crimen perfecto", _
"daño colateral", "deambular sin rumbo", "deber cumplido", "dejar en el tintero", "dentro de lo que cabe", "dientes como perlas", "dilatada trayectoria", "dimisión irrevocable", "disfrutar plenamente", "dolor insoportable", "Dulce Navidad", "dulces sueños", _
"emotivas imágenes", "en base a", "en este país", "enclave privilegiado", "entrañable familia", "entrañables fiestas", "entre la espada y la pared", "escalada de violencia", "escenas dantescas", "espiral de violencia", "está demostrado", "estricta disciplina", "estricta intimidad", _
"fe inquebrantable", "felices fiestas", "final de la vida", "flamante coche", "fuentes bien informadas", _
"generación especial", "generación perdida", "generar sinergias", _
"hallazgo sorprendente", "hambre canina", "hasta altas horas de la madrugada", "hombre de color", "horizontes lejanos", "hoy en día", _
"imágenes dantescas", "inagotable al desaliento", "incremento negativo", "incumplimiento flagrante", "ingresa cadáver", "instinto asesino", "isla paradisíaca", _
"jugarse la vida", _
"lealtad inquebrantable", "llamar poderosamente la atención", "llegados a este punto", "llegar a buen puerto", "llover a cántaros", "lo que es ", _
"mala fortuna", "mala leche", "mano de hierro", "marco incomparable", "marea humana", "merecidas vacaciones", "mascar la tensión", "mascar la tragedia", "meteórico ascenso", "modales exquisitos", "modales refinados", "morir en el tajo", "mosca cojonera", "mostrarse consternado", "mujer de color", _
"negro azabache", "nevada copiosa", "nexo de unión", "no pudo ser", _
"obediencia ciega", "obediencia inquebrantable", "ola de calor", "orgullo y satisfacción", _
"paladar exquisito", "parece ser que", "pasado de copas", "pasar olímpicamente", "pasarlas moradas", "pavoroso incendio", "perder la vida", "perdido sin remedio", "perfume embriagador", "persiana de color", "persona humana", "persona mayor", "persona pequeña", "pertinaz sequía", "piedra angular", "pies en polvorosa", "piso de lujo", "pistoletazo de salida", "playa paradisíaca", "poner en valor", "propósito inquebrantable", "próspero año nuevo", "puños cerrados", "puños de acero", _
"queridos amigos", _
"rabiosa actualidad", "rascarse la barriga", "reconocida solvencia", "refugio seguro", "residencia de la tercera edad", "residencia de personas mayores", "residencia para mayores", "residencia para menores", "rubia de bote", "rubia platino", _
"saltaron todas las alarmas", "saltó la noticia", "secreto mejor guardado", "segar la vida", "ser bien conocido", "serpiente multicolor", "situación límite", "sol de justicia", "sudar la gota negra", "sudar tinta", "sueño reparador", _
"tiempo inclemente", "tiempo inmemorial", _
"valer la pena", "verano caluroso", "verdades como puños", "virtud heroica", "volverse loco")

For i = 0 To UBound(TargetList)

Set range = ActiveDocument.range

With range.Find
    .Text = TargetList(i)
    .Format = True
    .MatchCase = False
    .MatchWholeWord = True
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False

Do While .Execute(Forward:=True) = True
    range.HighlightColorIndex = wdTurquoise
    Encontrado = Encontrado + 1
    Loop
    End With
Next

System.Cursor = wdCursorNormal
MsgBox ("HE TERMINADO y ENCONTRÉ " & Encontrado & " CLICHÉS")

End Sub

6) Pulsa el botón de guardar para no perder lo hecho hasta ahora y cierra el editor de Visual Basic.

7) En el menú «Vista», vuelve a pulsar la ficha «Macros» que está a la derecha.

8) En la ventana que se ha abierto selecciona la macro creada (Resaltar_clichés) hasta que en el apartado «Nombre de la macro» aparezca la macro que creamos y, en esta ocasión, pulsa la tecla «Ejecutar».

9) Esperas unos segundos y cuando se abra una ventana con el mensaje «HE TERMINADO» pulsa el botón «Aceptar».

En ese momento ya tendrás resaltados en tu documento los clichés que hayas utilizado y que estén en la lista de los 100 de Alex G., lista que es fácil de encontrarla en el código anterior porque son las únicas palabras que están en español. Incorporar nuevos clichés al programa es muy fácil; basta con añadirlos a continuación del último ("volverse loco") y separarlos con una coma.

Esta macro la guarda Word fuera del documento analizado por lo que, cuando quieras volver a analizar otro texto no tienes que repetir el proceso completo sino solo los pasos 7 a 9.

Comenta más abajo nuevos clichés para incluir (actualizaré este artículo con los que aportes), problemas que te hayan surgido o cualquier otra cosa que se te ocurra.

¿Te ha gustado este artículo? Compártelo en las redes sociales con los botones de abajo y/o deja tu dirección de correo electrónico para no perderte artículos futuros.

33 comentarios:


  1. Hola Javier, no tenía idea de que esto se pudiera realizar, me ha parecido muy interesante y práctico.

    Saludos y gracias por la entrada.

    ResponderEliminar
  2. Un buen aporte que hay que difundir y lo acabo de hacer en Twitter ;-)
    Gracias!

    ResponderEliminar
  3. Está genial. Lo he probado y funciona a la perfección. ¡Muchas gracias por compartir!

    ResponderEliminar
    Respuestas
    1. Gracias a ti, Maryan, por pasarte por aquí y por comentar, y sobre todo... por probar.

      Eliminar
  4. Muy bueno!!! yo mejoré un poco la macro para que indique cuántos cliché encontró. Basta con modificar la macro y agregar el siguiente código después del Dim TargetList:
    Dim Encontrado As Integer
    Encontrado = 0
    Posteriormente, antes de la palabra Loop (en el do while) tienes que agregar el siguiente código:
    Encontrado = Encontrado + 1
    y en el msgbox tienes que poner el siguiente código:
    MsgBox ("HE TERMINADO y encontré " & Encontrado & " cliché")

    Si les parece dificil o prefieren que les mande el código mejorado escribanme a arojasarriagada@gmail.com

    ResponderEliminar
    Respuestas
    1. Muchísimas gracias, Alejandro. Como puedes comprobar, ya he modificado la macro incorporando tu excelente aportación.

      Saludos.

      Eliminar
  5. Muy bueno saberlo. Lo probaré. Gracias, Javier.

    ResponderEliminar
  6. ¡Qué bueno y funcional! Desde que utilizo Word (¿20 años?) la ventana de las macro me ha resultado enigmática. Pensé que su uso se ceñía a dotar de formato a documentos como guiones, por ejemplo. Me ha encantado por la claridad de los pasos y porque es de las pocas veces en que alguien te señala cómo hacer, sigues las instrucciones con la atención que merecen y ¡hale hop! ¡Se cumple!

    ¡Gracias, Javier! Un abrazo.

    ResponderEliminar
    Respuestas
    1. Me alegro de que te haya funcionado. Espero que saques provecho en el futuro a esta macro y otras que te encuentres.

      Un abrazo.

      Eliminar
  7. Muy útil! Comparto este y todos los de las macros :)

    ResponderEliminar
  8. Genial!, muchas gracias por compartirlo.

    ResponderEliminar
  9. Muchas gracias por estas recomendaciones :)

    ResponderEliminar
  10. ¡Genial artículo! Muy útil el código que ofreces. En mi caso, más que por los clichés, por el abuso que hago del 'pero' y expresiones similares. Ya intenté hace un tiempo generar una macro que me resaltara todos los 'pero', 'aunque' y expresiones similares, pero mi desconocimiento de Visual Basic me lo hizo imposible. Gracias a tu propuesta, he conseguido marcar cada una de esas palabras y expresiones con colores diferentes; de esta forma puedo ver si se repiten demasiado cerca y cual es una buena opción para sustituir. Muchísimas gracias por semejante aporte.

    ResponderEliminar
    Respuestas
    1. Gracias por tus generosas palabras, Jorge. No sabes cuánto me alegro de haberte sido útil.
      Un saludo.

      Eliminar
  11. Aunque no lo he podido probar porque uso Writer y no funciona, por lo que veo es una maravilla de idea. Leí también tus artículos de macros para buscar repeticiones. ¡Muchas gracias! (Aunque no los pueda usar, algún día pillaré el Word de prueba para una última limpieza de mis borradores con tus macros. ^^

    ResponderEliminar
  12. Qué maravilla ¿Esto funciona también con Libre Office?

    ResponderEliminar
    Respuestas
    1. Lo siento, no utilizo Libre Office y, por tanto, desconozco el grado de compatibilidad que tiene respecto de las macros de Microsoft Office.

      Muchas gracias por pasarte por este blog.

      Eliminar
  13. Hola, Javier. Gracias por esta herramienta. He probado todas tus macros y las considero parte obligada entre los pasos de corrección de mis novelas. GRACIAS.

    ResponderEliminar
    Respuestas
    1. Un placer haberte sido de ayuda. Gracias por tu comentario. Un saludo.

      Eliminar
  14. Hola, Javier. Me parecen de muchísima utilidad todos los consejos y, sobre todo, estas macros que generosamente compartes. El mundo de las macros es sanscrito para mi, y las tuyas me han facilitado la vida inmensamente. Miles de gracias. Quiero comentarte un detalle del que he sido consciente al aplicar la macro de los clichés, y es que pasó por alto un "Parece ser que" que era inicio de frase. ¿Es posible que la macro respete mayúsculas y minúsculas? Y, de ser así, ¿cómo podría modificarse para que no lo hiciera? ¿Sería tan simple como añadir algún comando, o por el contrario la macro se complicaría demasiado? Y ya que estamos... ¿Sería posible que, además de decir cuántos clichés se han encontrado, la macro los desglosara de algún modo, con un listado o algo así? Porque acabo de ejecutar la macro en una novela de cuatrocientas páginas y encontrar visualmente las palabras resaltadas a veces se hace difícil. En cualquier caso, son detalles, y la macro ya es fantástica tal y como está. Muchas gracias de nuevo, y un efusivo saludo.

    ResponderEliminar
    Respuestas
    1. Comentarios como el tuyo son los que me animan a seguir compartiendo herramientas y reseñas en este blog. Como bien presupones, la macro respeta mayúsculas y minúsculas. Para que no las distinguiera, bastaba con cambiar el parámetro "MatchCase" de True a False. He vuelto a ejecutar la macro y he comprobado que funciona, por lo que he hecho el cambio en el texto de la macro que publico en este artículo.
      En cuanto al segundo punto, el de listar los clichés, reconozco su utilidad, pero me siento incapaz de modificar la macro para que genere dicho listado. Lo siento.
      Muchas gracias por tu comentario. Otro saludo para ti.

      Eliminar

Redes sociales