Exportación de access a txt con ancho fijo

Tengo una tabla de access y necesito exportarla a un archivo de texto con campos fijos ya establecidos... La consulta posee datos numéricos y alfabéticos.. Para los numéricos les coloco formato 00000 según el número de espacios del campo y en la consulta aparecen así 00002 si es el 2 y 00012 si es el 12.. Etc.
Además tengo un campo con un decimal y aparece bien en la consulta 005,2 etc.
El problema me ocurre al ejecutar el asistente de exportación a texto, guardo la especificación de ancho de campos y desaparecen los ceros que coloqué en los formatos numéricos... Es decir si en la consulta aparece 0004 en el archivo plano me aparece solamente 4 a la izquierda del campo y se daña todo...
Cambié el formato de los campos numéricos a texto con formato "0000" y máscaras de entrada de tipo 0000, me exporta bien pero tengo el problema de que si es un campo muy ancho.. Por ejemplo teléfono. 11 numérico.. Es engorroso digitar todos los ceros que exige la máscara 00003431758 y darse cuenta como cuadrar el número..
También tengo problemas en este caso porque el formato "00000" no me acepta decimales.. Si lo coloco "0000,0" tampoco lo acepta... ¿será qué hay una macro en Visual basic para exportar los datos de consulta a un archivo de texto de campos fijos en el que yo decida el ancho de los campos y si se alinean a la izquierda o derecha del campo y si son numéricos o de texto?

1 respuesta

Respuesta
Yo no uso macros nunca, ni me interesan.
Tu debes dejar bien los datos EN la/s tablas y exportar a texto, eso es todo.
Si para entrar datos a la tabla tienes problemas: los entras en un formulario enlazado
a la/s tablas y solucionas todos los fallos con código vba.
Los datos los entro con un formulario, pero al exportar a texto los campos numéricos me los alinea a la izquierda y yo quiero que sean del mismo ancho siempre alineados a la derecha y rellenos con ceros por la izquierda
Los ceros a la izquierda y siempre del mismo ancho... pon en diseño de Tabla/Campo Numérico ... Formato... "000000" o así. ¿Ok?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas