Saltar al contenido
TXT Fácil
☰ Menú
Guía · Excel

Cómo convertir un Excel a TXT de ancho fijo para los aplicativos fiscales

Por Equipo Técnico TXT Fácil · Publicado el

Respuesta rápidaPara pasar un Excel a un TXT de ancho fijo hay que llevar cada dato a su largo exacto: números con ceros a la izquierda (DERECHA y REPETIR), textos con espacios a la derecha (IZQUIERDA y REPETIR), fechas con TEXTO y todo unido en una columna que se copia a un archivo ANSI con CRLF.

Qué es un TXT de ancho fijo

La mayoría de los aplicativos fiscales argentinos importa archivos de texto en los que cada dato ocupa una cantidad exacta de caracteres, sin separadores entre campos. Por ejemplo, en el Libro IVA Digital la fecha ocupa 8 posiciones, el tipo de comprobante 3 y el punto de venta 5. Cada línea es un registro y todas tienen que medir lo mismo. Eso se llama formato de ancho fijo.

Para que un dato ocupe siempre su largo, se aplican dos reglas generales:

Las fórmulas que necesitás en Excel

Con cuatro funciones se arma casi cualquier diseño. Usamos los nombres de Excel en español y el punto y coma como separador de argumentos, que es lo habitual en Argentina.

Número con ceros a la izquierda

Para llevar el valor de A2 a 5 posiciones: =DERECHA(REPETIR("0";5)&A2;5). La fórmula pega cinco ceros delante del número y se queda con los últimos cinco caracteres.

Texto completado con espacios

Para llevar la razón social de B2 a 30 posiciones: =IZQUIERDA(B2&REPETIR(" ";30);30). Si el nombre es más largo que 30, se recorta.

Importe sin coma decimal

Para un importe de C2 en 15 posiciones con los dos últimos dígitos como centavos, como en el Libro IVA Digital: =DERECHA(REPETIR("0";15)&REDONDEAR(C2*100;0);15). Multiplicar por 100 y redondear evita los problemas de decimales de punto flotante.

Importe con coma decimal

Para aplicativos que piden coma decimal, como SICORE, en 16 posiciones: =DERECHA(REPETIR("0";16)&TEXTO(C2;"0,00");16). El formato depende de la configuración regional: en una computadora en inglés el separador decimal es el punto.

Fechas

Para AAAAMMDD: =TEXTO(D2;"aaaammdd"). Para dd/mm/aaaa: =TEXTO(D2;"dd/mm/aaaa"). Ojo: en Excel en inglés el año se escribe "yyyy".

Unir todo en una línea

Con el operador & se concatenan los campos en el orden del diseño: =E2&F2&G2&H2, y en otra columna =LARGO(I2) para controlar que todas las líneas midan lo que pide el diseño.

Cómo pasar la columna a un archivo TXT

  1. Copiá la columna con las líneas armadas, sin el título.
  2. Pegala en el Bloc de notas (Windows) o en TextEdit en modo texto sin formato (Mac).
  3. Guardá en codificación ANSI con saltos de línea CRLF. En Mac, elegí "Occidental (Windows Latin 1)".
  4. Abrí el archivo y verificá que no haya una línea vacía al final ni espacios recortados.

Evitá "Guardar como texto" desde Excel: suele agregar comillas a los textos con espacios y puede cambiar la forma de los números.

Los errores que más se repiten

La alternativa sin fórmulas

Armar y mantener estas fórmulas funciona, pero cada diseño tiene sus particularidades: campos que dependen de otros, controles cruzados, ZIP con nombres especiales o códigos de verificación. Para eso están los generadores de TXT Fácil: pegás las columnas de tu Excel tal como las tenés, la herramienta valida cada celda (CUIT, fechas, importes, códigos) y arma el archivo con el largo exacto, en ANSI y con CRLF. Todo se procesa en tu navegador, sin subir los datos a ningún servidor.

¿Tenés que armar el archivo? Hacelo desde tu Excel, gratis y sin subir datos. Abrir los generadores de TXT Fácil →