
Pues sí, aunque no lo creas, Excel puede ayudarte a traducir esos documentos un poco «especiales» que a veces te llegan y, a primera vista, te horrorizan…
Me explico: imagínate que tu cliente te envía este documento de texto, un sencillo TXT sin formato, pero con esta pinta:
Id00110 = "Nelson Mandela" Id00417 ="Resentment is like drinking poison and then hoping it will kill your enemies." Id00639 = "Forrest Gump" Id00823 = "Life is like a box of chocolates. You never know what you're gonna get!" Id00782 = "Yoda" Id00998 ="Do... or do not. There is no try." Id00542 ="Albert Einstein" Id00984 = "God doesn't play dice with the world." Id00436 = "Galileo" Id00338 = "And yet it moves" Id00568 = "Alejandro Magno" Id00148 = "What an excellent horse do they lose, for want of address and boldness to manage him!"
Es la primera vez que ves uno así, pero entiendes rápidamente que la parte izquierda es el identificador, y que solo se traduce el texto entrecomillado.
Nota: aquí te lo pongo con colores para que se vea más claro, pero se trata de un texto sin ningún formato. De hecho, te animo a que te lo descargues y lo veas en tu propio ordenador.
El cliente te ha puesto en alerta cuando lees este detallito: «¡NO TOCAR LO QUE ESTÁ FUERA DEL ENTRECOMILLADO!».
Es un documento larguísimo de 10.000 líneas, y te entra un gusanillo en el estómago de qué pasaría si borraras sin querer una línea o una comilla: ¡tardarías mil años en saber qué has borrado sin saberlo!
Haces bien en prever este problema, pero ya lo sabes:
A grandes problemas,
soluciones sencillas.
Te voy a presentar una forma elegante de evitar estos riesgos potenciales.
Lo haremos en Microsoft Excel, empleando las funciones que tiene integradas. Supongo que también lo puedes hacer en otros programas como LibreOffice Calc.
Por cierto: lo preparamos una vez, y lo podrás reutilizar las veces que quieras para otras traducciones similares…
¡Vamos allá!
Nuestro primer objetivo es conseguir las cadenas de texto limpias, sin identificadores ni comillas.
1.ª columna A (texto original) y preparación
Se trata de abrir el documento de texto en Excel y preparar un poco el documento para que todo esté más claro.
Es muy fácil: simplemente abres el archivo TXT con el Bloc de notas, seleccionas todo el texto (CTRL+E, posiblemente), lo copias (CTRL+C) y lo pegas (CTRL+V) en la primera columna de un archivo nuevo de Excel.
Nota: si quieres ir haciéndolo conmigo, descárgate el documento TXT (evidentemente, es para una prueba de pocas líneas, pero lo que vas a hacer es extrapolable a un documento de 20.000 líneas).
Una vez que tienes el texto en Excel, insertas una fila en la primera línea. En esta fila escribes títulos indentificativos de lo que vas haciendo, así no nos te perderás en la marea de fórmulas que nos espera… Además, lo he coloreado de fondo negro y letra de color blanco para que resalte más.
Si sigues mis pasos, en la columna A tendrás estos valores:
- Título de columna: «Cadena original»
- Valor A2: «Id924 = "Nelson Mandela"»
- Valor A3: «Id00914 = "Resentment is like drinking poison and then hoping it will kill your enemies."»
- etc.
Atención, un apunte sobre la nomenclatura:
- Las comillas latinas no aparecen en Excel, solo indican un texto literal.
- Las comillas rectas indican que hay unas comillas rectas en el texto de la celda de Excel.
Si me has seguido hasta aquí, deberías tener algo así:

2.ª columna B (fórmula para borrar espacios iniciales y finales)
En esta columna vamos a tener en cuenta un despiste típico del programador humano, que consiste en meter manualmente espacios innecesarios al principio o al final de la línea.
Si te has descargado la hoja de Excel, puedes ver que la primera línea tiene un espacio extra al final, que no hace falta, es innecesario, y que si lo borramos ahora nos facilitará la tarea después, cuando diseñemos las siguientes funciones.
- Título de columna: «Cadena sin espacios inicial/final»
- Fórmula en línea 2: «=ESPACIOS(A2)»
- Valor B2: «Id924 = "Nelson Mandela"»

La función ESPACIOS borra los espacios iniciales o finales de la cadena de texto (no los internos).
3.ª columna C (comillas)
En la tercera columna escribes simplemente el carácter que encierra el texto que hay que traducir, en este caso, las comillas rectas (").
Como título, puedes poner algo así como «Comillas».
Hacerlo de esta manera, nos permitirá utilizar más adelante este documento de Excel como una plantilla. Por ejemplo, si en un segundo documento TXT el carácter delimitador de cadenas de texto no fueran comillas ("), sino la comilla simple ('), pondrías la comilla simple en estas celdas.
Si quieres, puedes rellenar toda la columna con las comillas, o bien hacerlo al final para todas las columnas, como prefieras…
- Título de columna: «Comillas»
- Valor C2: «"»

4.ª columna D (fórmulas de posición de comillas)
Aquí guardaremos la posición de las primeras comillas de la columna B.
- Título de columna: «Posición»
- Fórmula en línea 2: «=ENCONTRAR(C2;B2)»
- Valor D2: «9»
La función ENCONTRAR devuelve la posición de la primera aparición de un carácter (las comillas, en este caso, que es el valor de la celda C2) en una cadena (en este caso, la cadena que hay en la celda A2, que es la original). Si no lo encuentra, devuelve el valor cero (0).
Si el archivo ha sido generado automáticamente, es muy posible que la posición de las comillas se mantuviera en todas las líneas; pero si un ingeniero ha toqueteado el archivo o si la longitud del identificador varía de una línea a otra, la posición de las primeras comillas variará, como es nuestro caso (ingeniero tocando e identificadores de longitud diferente).
Como más vale prevenir que curar, no supondremos nada, y usaremos la función ENCONTRAR de arriba para conseguir la posición de las primeras comillas rectas de cada línea.

Nota: si tu sistema operativo Windows tiene un separador de listas distinto del punto y coma (;), por ejemplo, una coma, deberás cambiar la función de Excel =ENCONTRAR("""";B2) a =ENCONTRAR("""",B2), ¿de acuerdo? En cambio, si abres la hoja de Excel del enlace, podrás ver el separador de listas correcto, punto y coma (;) o la coma (,), sin necesidad de cambiar nada.
5.ª columna E (fórmula con «casi» la cadena para traducir)
Estamos ya a un paso de conseguir nuestro primer objetivo: la cadena original.
En esta columna guardaremos una cadena de texto temporal:
- Título de columna: «Cadena temporal 1»
- Fórmula en línea 2: «=DERECHA(B2;LARGO(B2)-D2)»
- Valor E2: «Nelson Mandela"»
Como ves, solo le sobran las comillas finales.

La función LARGO devuelve el número de caracteres de su argumento (en este caso la cadena de la celda B2, es decir, la original sin espacios iniciales/finales).
La función DERECHA devuelve la parte derecha de una cadena (en este caso, la cadena de la celda B2) que contiene el número de caracteres especificado (en este caso, LARGO(B2)-D2, es decir, la longitud de la cadena original sin espacios iniciales/finales menos la posición de las primeras comillas).
Como ves la función LARGO está dentro de la función DERECHA.
Es un poco lioso, pero como puedes ver, conseguimos la cadena desde las primeras comillas.
Se incluyen las comillas de cierre, pero en la siguiente columna, se las quitaremos…
6.ª columna F (fórmula con la cadena para traducir)
Sabiendo que no hay espacios al final de la cadena, podemos estar seguros de que el último carácter son las comillas.
Así que en esta columna tenemos la cadena que necesitamos traducir, limpia de paja.
- Título de columna: «Cadena original limpia»
- Fórmula en línea 2: «=IZQUIERDA(E2;LARGO(E2)-1)»
- Valor F2: «Nelson Mandela»

La marco de color amarillo, porque ya tenemos el primero de los 2 objetivos.
Como puedes suponer, la función IZQUIERDA es similar a DERECHA vista antes, pero devuelve la parte izquierda de la cadena especificada.
No lo he dicho hasta ahora, pero este es un buen momento para guardar tu hoja de cálculo.
Proceso de traducción
Ahora puedes copiar las celdas de la columna F y llevártelas a tu programa de traducción preferido, y traducirlas como haces siempre, por ejemplo en Microsoft Word o LibreOffice Writer.
Una vez que lo tengas todo traducido en Word, copias tu traducción y la pegas en la columna G del mismo documento de Excel (que tenías guardado esperando este momento):
7.ª columna G (fórmula con la cadena traducida)
Lo dicho: pegas tu traducción en la 7.ª columna del documento de Excel.
Marco la columna de color naranja, porque es una de las columnas clave de la hoja de Excel.
- Título de columna: «Cadena traducida»
- Valor G2: «Nelson Mandela»

El segundo objetivo es conseguir una columna en Excel con la misma información que al principio, pero traducida. Lo haremos también con fórmulas, y así no hay lugar para equívocos.
8.ª columna H (fórmula con el identificador)
En esta columna guardamos otra cadena temporal con la parte izquierda de la línea: el identificador hasta las comillas de inicio.
- Título de columna: «Cadena temporal 2»
- Fórmula en línea 2: «=IZQUIERDA(B2;D2)»
- Valor H2: «Id924 = "»

9.ª columna I (fórmula para la cadena final)
Con la novena columna terminamos, porque ahora podemos copiar esta columna (excepto el encabezado de la primera fila, y pegarlo en el archivo TXT original).
- Título de columna: «Cadena final»
- Fórmula en línea 2: «=H2&G2&C2»
- Valor I2: «Id924 = "Nelson Mandela"»

Lo marco de color verde para indicar que hemos llegado a nuestro objetivo: tener las cadenas traducidas sin mucho jaleo.
El símbolo & une cadenas, en este caso:
- la cadena de la celda H2 (el identificador hasta las comillas);
- la cadena de la celda G2 (la cadena de texto traducida);
- la cadena de la celda C2, es decir, las comillas rectas (").
Si quieres dejarlo más bonito, puedes ocultar (no borrar) las columnas temporales, que ya no vamos a cambiar, y dejar solo las necesarias para interactuar: escribir y copiar o pegar textos.

Copia los datos de la columna I, los pegas en el documento TXT original, échale un vistazo para confirmar que todo está bien, y se lo envías a tu cliente, que se pondrá muy contento de que hayas sido capaz de traducirlo. No olvides mencionarle que no has tocado nada que no deberías (en minúsculas)…
🙂
Si quieres, ahora puedes guardar tu hoja de cálculo, porque ya has terminado con ella… Al menos hasta la siguiente vez que te llegue un documento TXT similar, cuando la podrás usar de plantilla para extraer el texto que necesitas traducir. Cada vez que reutilices la plantilla, solo necesitarás:
- abrir y copiar el texto del archivo de texto TXT y pegarlo en la en la columna A de la hoja de cálculo;
- asegurarte de que las comillas son el carácter delimitador de cadenas, o cambiarlo en la columna C;
- si el nuevo documento tiene más líneas que tu plantilla, necesitarás copiar las fórmulas hasta la línea que necesites;
- copiar la columna I (sin el encabezado) y pegarla en el TXT original.
Ha sido útil Excel, ¿verdad?
Conclusiones de usar Excel para traducir documentos
Lo reconozco, el título del artículo tenía truco: no traduce con Excel, pero sí es verdad que te ayudas de un programa de hoja de cálculo, como Excel o LibreOffice Calc, para hacer tu trabajo mucho más fácil y llevadero.
Tú también puedes emplear las funciones de Excel para traducir un documento un tanto «especiales».
Este tipo de documentos especiales cada vez son más habituales en el mundo de la traducción, y se usan mucho en contenido web y software.
Ya sabes que te puedes descargar el TXT de prueba y la hoja de Excel.
Nota: la casuística de estos archivos TXT es muy grande, demasiado para tratarla en este artículo; así que fíjate bien si necesitas cambiar algo en la plantilla de Excel y que no tienes errores en las celdas.
Si has llegado hasta aquí, mi querido traductor, permíteme hacerte una pregunta:
Si mañana te llegara uno de estos documentos de texto, ¿sabrías salir adelante y traducirlo de la forma más conveniente para ti, sin morir en el intento?
Respuesta: ___
Me alegro de que hayas contestado con un rotundo SÍ, y de que ya no los veas tan «especiales».
* * * * * * *
Antes de despedirme, te adelanto un próximo artículo, que tratará de una segunda posibilidad de trabajar con estos archivos «especiales». No será justo el siguiente artículo, para que descanses algo de las citas de famosos, pero queda prometido.
Quiero que sepas que con las herramientas adecuadas es posible traducir directamente en el documento original (formato TXT) con la seguridad total de que no borrarás ni cambiarás nada que no debas tocar. En un próximo artículo haremos lo mismo, pero dentro de Trados Studio (con toda seguridad también es posible en otras herramientas TAO, como memoQ) y emplearemos las expresiones regulares. Es un proceso más directo, sin archivos de Excel intermedios, y más potente, ya lo verás.
Imagen de cabecera basada en una imagen de http://www.iconarchive.com/show/oxygen-icons-by-oxygen-icons.org.html.
¡Interesante blog! Y sorprendente uso de Microsoft Excel. Te confieso que nunca me imagine que Excel pudiera ser empleado con estos fines.
Ahora que lo pienso se me ocurre que puedo automatizar vía Visual Basic algunas de estas rutinas, incluyendo integrarlo vía API con el motor de traducción de Bing.
Voy a desarrollarlo como proyecto de fin de semana y publicaré avances en mi blog, excellentias.com
Hola, Daniel:
Pues sí, durante años seguí este método, porque la ley de Murphy dice que si se traduce el archivo TXT tal cual, desaparecerá alguna comilla, alguna línea o cuqluier cosa que luego es muy difícild e saber qué falta.
Me apunto para pasarme el lunes por tu blog y ver cómo lo programas, y pondré un enlace a tu artículo, así todo el mundo podrá aprovechar también tus conocimientos. Es más, sinceramente, no sabría cómo empezar para traducir con Bing así que me muero de ganas de saberlo.
¡Hasta pronto!
... Jesús Prieto ...