Cómo traducir solo las filas faltantes en CSV o Excel con IA

Cómo traducir solo las filas faltantes en CSV o Excel con IA

7 de septiembre de 2026

Estás viendo un archivo donde parte del trabajo ya está hecho. Cucientas filas tienen un título en alemán. Tres mil seiscientas no lo tienen. Alguien, en algún momento, tradujo el primer lote y luego el catálogo creció.

Las herramientas obvias exigen el archivo completo. Por lo tanto, la cuestión no es cómo traducirlo. La cuestión es cómo traducir la parte que falta y pagar solo por esa parte.

Cómo es en realidad un archivo parcialmente traducido

Aquí tienes la estructura del problema, lo suficientemente pequeña como para verla de un vistazo.

Un archivo donde dos de cuatro filas ya tienen un título en alemán. Solo las dos celdas vacías están en el alcance y el resto del archivo se devuelve idéntico.

Llévalo a cuatro mil filas (un ejemplo ilustrativo, no un trabajo real) y las dos opciones dejan de parecerse. O pagas por 4,000 filas y revisas los cambios de todas ellas, o pagas por 3,600 y revisas 3,600. Con la segunda opción, además, se mantiene intacta la redacción que tu compañera ya había revisado.

Los cinco tipos de archivos donde ocurre esto

No se trata de un caso excepcional. Es lo normal en cualquier archivo que se ha editado más de una vez, y lo que está en juego es importante: CSA Research concluyó en julio de 2020, en un estudio realizado a 8,709 consumidores de 29 países, que el 76% de los compradores online prefiere comprar productos con información en su propio idioma, y que el 40% nunca compra en sitios web en otros idiomas.

Filas añadidas desde la última vez. El catálogo creció en 200 productos. Los otros 3.800 están listos y revisados. Este es el caso más común con diferencia y se repite cada mes.

Un idioma añadido a un archivo que ya tiene tres. Tu hoja de cálculo tiene columnas en francés, alemán y español. El italiano se acordó la semana pasada y su columna está vacía, o ni siquiera existe. Quieres que se escriba el italiano y que los otros tres se queden intactos.

Un traspaso que alguien más comenzó. Un freelance completó el primer tercio antes de que el proyecto se detuviera. No sabes exactamente dónde paró y no quieres descubrirlo pagando por la duplicación.

Un archivo en el que una herramienta anterior copió el texto de origen en el destino como marcador de posición. Esto puede engañar a cualquiera, porque el archivo parece terminado. En una exportación XLIFF, cada unidad de traducción puede incluir un elemento <target> y un atributo state que indica el estado del destino (la especificación define el destino como opcional y state como una indicación de su estado). Sin embargo, muchas herramientas rellenan de antemano el destino con una copia del texto de origen para que la estructura parezca completa. Al abrir uno de estos archivos, todos los destinos tienen contenido, aunque muchos no estén traducidos.

Filas que se dejaron intactas deliberadamente. Descripciones internas de SKU, un párrafo legal aprobado por tu asesor solo en un idioma, tres productos que van a ser descontinuados. Estos no son huecos. Son decisiones, y una herramienta que los rellene por «ayudar» habrá dañado el archivo.

Esos dos últimos casos son la razón por la que «traducir los vacíos» no es una casilla de verificación. Solo tú sabes qué se considera que falta, por lo que el mecanismo debe requerir una frase tuya en lugar de un ajuste.

Dónde termina el alcance por rango y empieza el alcance por condición

Volver a traducir todo el archivo implica pagar dos veces por la parte ya terminada. Traducir solo los huecos presupuesta y revisa únicamente las filas faltantes.

Un traductor automático trabaja con el texto que le das. DeepL y Google Translate reciben texto y devuelven texto, así que tienes que decidir qué filas no traducir antes de enviar el contenido (consulta nuestro análisis completo de las limitaciones de la traducción masiva con DeepL). Algunas herramientas sí permiten seleccionar rangos. Por ejemplo, el traductor de Excel de Smartcat te deja indicar un rango de columnas, como A:H, o de filas, como 1:50, y elegir si quieres traducirlo o dejarlo tal cual. Pero un rango señala una ubicación, mientras que «solo cuando la celda en alemán esté vacía» es una condición sobre el contenido, y eso es lo que hacemos nosotros. De lo contrario, tienes que filtrar el archivo antes de enviarlo y volver a integrar el resultado después. Es una tarea con hojas de cálculo de la que ahora te encargas tú y que tienes que repetir cada mes. Por otra parte, esto no se basa en ninguna prueba que hayamos realizado, sino en la experiencia de nuestros clientes: algunos equipos han acudido a nosotros porque, con su contenido real y su terminología específica, la traducción automática dejó de alcanzar el nivel que exigen antes de publicar.

Un asistente general puede mantener la regla durante un tiempo. Pega 50 filas en ChatGPT o Claude con la instrucción «solo rellena las celdas alemanas vacías» y lo hará. El problema surge al escalar y ocurre silenciosamente: en algún punto después de los primeros fragmentos, una fila que ya tenía traducción recibe una nueva, y lo descubres durante la revisión, o no lo descubres. Hay una versión más larga de esa comparación si te interesa, pero la versión corta es que una regla en la que tienes que confiar no se puede verificar, mientras que una aplicada por código sí.

Una agencia hará exactamente lo que pidas. El coste no es la tarifa por palabra, sino la preparación: extraer las filas faltantes, explicar qué columnas dejar intactas, esperar y luego volver a integrar el resultado en tu propio archivo. Ese trabajo no es lingüístico, y el coste oculto es que tienes que repetirlo todo en la siguiente actualización.

Primero, el método manual

Si prefieres hacerlo a mano, estos son los pasos básicos:

  1. Aplica un filtro a la columna de destino para mostrar solo las celdas vacías.
  2. Copia el texto de origen de las filas que sigan visibles.
  3. Pégalo en un traductor y tradúcelo.
  4. Pega el resultado en las filas filtradas de la columna de destino.
  5. Quita el filtro y comprueba que el orden de las filas no haya cambiado y que las filas ya terminadas sigan en su sitio.

Funciona y, para unos cientos de filas, es una opción razonable. Lo que sigue es para cuando prefieres no repetir esos cinco pasos todos los meses o cuando «falta» algo más que una celda vacía.

La instrucción se convierte en código, por eso se mantiene en la fila 18.000

Esta es la parte que merece la pena entender, porque explica por qué una regla de alcance se comporta de forma diferente aquí.

Tu frase no se pasa como una pista a un modelo de traducción. AI Glot lee la estructura de tu archivo y luego convierte tu instrucción en un pequeño programa que recorre el archivo y produce la lista exacta de qué fragmentos de texto están dentro del alcance. Esa lista es la que se traduce. La regla es evaluada una vez por registro mediante código, por lo que el registro 18.000 pasa la misma prueba que el registro 1. No hay desviaciones, porque no hay nada que pueda desviarse.

Ese programa se ejecuta bajo una serie de comprobaciones antes de que se consuman créditos:

  • No puede cambiar tu archivo. El documento se compara antes y después de que se ejecute el programa, y cualquier modificación es rechazada categóricamente. Tu archivo subido nunca se toca, y cada decisión de alcance se aplica solo al archivo de salida.
  • No puede inventar texto. Cada fragmento de texto que seleccione debe existir en tu archivo palabra por palabra. No puede parafrasear una celda al pasar.
  • Cada destino debe ser un espacio real escribible, por lo que una regla que apunte a una columna inexistente falla en la fase de planificación en lugar de generar un archivo extraño.
  • Si tu regla no coincide con nada, la planificación falla y te avisa. Esto puede parecer poco amable, pero es genuinamente útil: es la forma de saber, gratis, que el archivo que creías que estaba a medio hacer en realidad ya estaba terminado.

«Sigue faltando» significa cuatro cosas distintas

Aquí está el matiz que decide si tu frase funciona. Un hueco no es el mismo objeto en cada formato, por lo que la prueba que debe describir tu instrucción cambia según el archivo que tengas delante.

Una frase sencilla sobre lo que falta y las cuatro pruebas diferentes en las que se convierte según el formato de su archivo.

En una hoja de cálculo, un hueco es una celda vacía. Un archivo CSV no distingue entre origen y destino: RFC 4180 solo describe registros, campos y una posible fila de encabezado, así que solo tus instrucciones pueden indicar qué columna es la de origen y cuál la de destino. Tanto si el archivo llega como una exportación CSV como si es un libro de Excel, la comprobación es la misma: esta fila tiene un título en inglés y nada en la columna de alemán, así que debe incluirse. Di «solo las filas en las que la columna de alemán siga vacía».

En un archivo bilingüe, un hueco suele ser un destino que todavía coincide con el texto de origen. XLIFF vincula cada unidad a un campo de traducción que muchas herramientas rellenan de antemano con una copia del texto de origen. En ese caso, comprobar si está vacío no sirve; lo correcto es comparar: «traduce solo las unidades en las que el destino todavía contenga el mismo texto que el origen». Esa frase basta para gestionar un archivo como este, que es un ejemplo ilustrativo y no un archivo de cliente: una exportación de WordPress con 228 unidades, de las cuales 217 todavía tienen el francés original como destino, es un trabajo normal, no un debate sobre si el archivo está terminado.

En un árbol de claves, un hueco es una clave que no está. En JSON o YAML, la traducción al alemán de una cadena o existe como una clave hermana o no existe, y una clave faltante puede crearse siempre que el objeto padre exista. Un valor vacío también cuenta, por lo que «solo donde la clave de falte o esté vacía» cubre ambos casos.

En un archivo monolingüe no hay nada con lo que comparar dentro del propio archivo, y ese es el límite real. Un archivo strings.xml de Android, un archivo .strings de iOS (la guía de Apple recomienda mantener un archivo .strings por idioma, cada uno en una carpeta de idioma como de.lproj), un archivo .properties de Java, un RESX de .NET y un archivo de subtítulos SRT contienen exactamente un valor por clave. No tienen una columna de origen al lado. Por eso no se puede comprobar automáticamente si algo «ya está traducido»: el archivo no guarda esa información. Lo que sí puedes comprobar es lo que el archivo muestra: un valor vacío o una marca que hayas añadido, como el prefijo TODO. Si la única señal es que un valor «parece inglés», no hay ninguna regla que pueda expresarlo de forma fiable; es mejor dividir el archivo antes de subirlo.

Dónde poner la frase de alcance y dónde no hará nada silenciosamente

Si te equivocas en esto, pagarás por traducir todo el archivo. Hay dos lugares para escribir una instrucción y no son intercambiables.

La instrucción del plan decide qué texto se traduce. Las instrucciones del lote deciden cómo se escribe cada cadena. El alcance en la instrucción incorrecta no tiene efecto.

La instrucción del plan es la que escribes antes de ver el plan. Se analiza en relación con la estructura de tu archivo y es la base sobre la que se construye el plan. Aquí es donde se define el alcance.

Las instrucciones del lote se trasladan a la traducción y se aplican a medida que se escribe cada cadena individual. En ese momento, lo único visible es una cadena, por lo que una regla solo puede describir algo que sea visible dentro de ella: mantener un marcador de posición tal cual, no tocar una URL en el contenido, no traducir nunca un nombre de producto o usar un registro informal.

Aquí es donde ocurre el fallo. Escribe “traduce solo las celdas vacías” en las instrucciones del lote y no pasa nada, ni recibes ninguna advertencia. En ese punto no hay celdas. Hay una cadena, ya seleccionada y en proceso de traducción, porque la decisión del alcance se tomó antes mediante una instrucción que nunca mencionó el alcance. El archivo vuelve totalmente traducido y la factura lo refleja.

Escrito en las instrucciones del lote Por qué no funciona Dónde debe ir
“Traduce solo las celdas vacías”. No hay celdas a la vista, sino una cadena. La instrucción del plan
“Sáltate la primera columna”. Una columna es estructura de archivo. La instrucción del plan
“Solo las filas añadidas desde marzo”. Lo mismo. La instrucción del plan
“No toques la columna SKU”. Lo mismo. Describe el contenido en su lugar: “no traduzcas los códigos de producto alfanuméricos”. Cualquiera de las dos, redactado de nuevo

La forma más sencilla de recordarlo: el plan decide qué se traduce, las instrucciones del lote deciden cómo suena.

Cómo redactar la instrucción

Inglés sencillo, una o dos líneas, nombrando explícitamente el idioma de origen y el de destino. Todas estas opciones funcionan tal cual:

Only the rows where the German column is still empty. Source is English.
Only translate the units where the target is identical to the source,
it is a placeholder. Leave every unit that already differs.
Fill the empty Italian column from the English one. Do not touch the
French, German or Spanish columns.
Translate the description and the SEO title into Dutch where the Dutch
version is missing. Leave the handle and the SKU alone.
Instructions for this batchOptional
Apply
Describe el trabajo en inglés sencillo. AI Glot lo convierte en un plan que puedes revisar y corregir antes de ejecutarlo.

Dos hábitos que compensan con creces. Nombra el idioma de origen en lugar de dejar que se infiera, porque la inferencia es menos fiable precisamente donde más importa: cadenas cortas y archivos que ya contienen algunos valores traducidos, como ocurre con cada archivo de este artículo. Y nombra las columnas o claves que quieres dejar intactas, incluso cuando tu regla de alcance ya las excluya. Solo requiere una cláusula adicional y elimina toda una categoría de malentendidos.

Si los mismos términos deben traducirse siempre de la misma forma que en el lote anterior, añádelos una sola vez a un glosario de espacio de trabajo. Así, las filas que rellenes ahora coincidirán con las que alguien rellenó en marzo, que es la otra mitad de cómo terminar correctamente un archivo traducido parcialmente.

Confirma el alcance antes de pagar por él

Nunca tienes que confiar en que la instrucción se haya entendido, porque lees el plan primero.

El plan devuelve recuentos medidos, el número real de elementos y palabras encontrados en tu archivo, no una estimación basada en su tamaño. Ofrece tres formas de verificarlo: una vista previa de cómo quedará el archivo, una tabla con los fragmentos de texto exactos que se enviarán y un resumen en lenguaje sencillo de lo que se ha entendido. La tabla de elementos es donde un alcance erróneo se hace evidente, porque una fila que esperabas que estuviera excluida aparece en la lista o no.

Si es incorrecto, indícalo en una frase y el sistema volverá a planificar. Crear el lote y planificar es gratuito y se puede repetir tantas veces como quieras. La aprobación es el único paso que consume créditos, y la cifra que apruebas es el recuento de palabras medido de lo que está dentro del alcance. Por tanto, el error costoso de todo este artículo, pagar por volver a traducir un trabajo ya hecho, es algo que solo puede ocurrir si apruebas un plan que así lo indique.

Ese orden importa más de lo que parece. En una herramienta donde el alcance es una suposición, hay que confiar. En una herramienta donde el alcance es un plan que lees, equivocarse no cuesta nada.

Dos cosas más que conviene saber

Puedes solicitar que se devuelvan solo los registros modificados. Si lo que necesitas es un archivo pequeño para entregarlo a un revisor en lugar de todo el catálogo, indícalo y el resultado mantendrá solo los registros que recibieron una traducción. Esto funciona para archivos CSV, Excel, JSON, YAML, PO, XLIFF, SRT y archivos ZIP de estos formatos. Se deniega deliberadamente para archivos de recursos de aplicaciones, ya que una aplicación busca cada clave que espera encontrar y un strings.xml parcial provoca un cierre inesperado en lugar de ser un archivo más pequeño.

Una regla que necesite contar en todo el archivo no funcionará. Con un archivo grande, el programa que selecciona el contenido procesa ventanas consecutivas de filas, en lugar de verlo todo a la vez. Las reglas basadas en la posición sí funcionan, porque puede hacer el cálculo: cada dos filas, las primeras 500 filas. Pero una regla que necesite llevar una cuenta acumulada, como «las primeras 200 filas que sigan vacías», no funciona, porque en una sola pasada no se puede saber cuántas coincidencias hubo en las ventanas anteriores. Puedes pedir todas las filas vacías o un intervalo fijo de filas: ambas opciones funcionan. Los archivos pueden tener muchas filas: Excel permite 1,048,576 filas por hoja, así que hay margen de sobra para probar una regla que se aplique a la fila 18,000.

El alcance real de todo esto

Úsalo para la parte que es genuinamente repetitiva: las 200 filas que aparecieron este mes, el cuarto idioma que alguien aceptó la semana pasada, las dos mil unidades que una herramienta anterior dejó con su texto de origen. Ese trabajo es tedioso si se hace a mano, y es el mismo trabajo cada mes.

Luego, dedica el tiempo de revisión al resultado, no a filtrar el archivo. Muchos equipos utilizan esto como primera pasada y hacen que un revisor lo supervise, lo cual es un uso eficiente de un experto y un uso pésimo de una tarde dedicada a hacer una copia de una hoja de cálculo borrando algunas filas.

Si aún no has completado ninguno de estos procesos de principio a fin, empieza por el flujo completo en lugar de por el alcance: hay una guía para traducir un archivo CSV y otra para traducir un libro de Excel, y la frase sobre el alcance mencionada anteriormente se puede aplicar en cualquiera de ellas sin cambios.

Para tu página de inicio, contrata a un traductor. Para las 3.600 filas que siguen vacías, no pagues por las 400 que no lo están.

¿Listo para traducir tus archivos grandes?

Crea una cuenta gratuita →

Prompt copiado

  1. 1Abre tu agente de IA
  2. 2Pega el promptCtrl V
  3. 3Sigue sus indicaciones
Mostrar el prompt

Traduce un archivo por mí con AI Glot. Pregúntame qué archivo y qué idiomas, y luego sigue https://ai-glot.com/agent.md

Tus primeras 5.000 palabras gratis