domingo, 15 de noviembre de 2009

Escribir y leer archivos .txt usando VBA en Excel

Buenas,
hoy voy a continuar con el post anterior, pero sin tanta contabilidad ni fiscalidad. Este será la primera de 2 entradas donde voy a explicar cómo obtener “el ficherito” para la presentación telemática del modelo 115 a través de la página de la AEAT. En la segunda entrega colgaré el archivo Excel que genera el fichero, pero por ahora me entraré en explicar cómo se escribe y se lee de archivos .txt en Visual Basic 6, cosa que se ha de dominar para entender el meollo de la cuestión.

  • A modo de esquema, éste es el código para crear y/o escribir en un archivo:
    Open [ruta_archivo] For Output As #1
    Print #1, [texto o nombre_variable]
    Close
    #1

  • Para la lectura:
    Open [ruta_archivo] For Input As #1
    Line Input #1, [nombre_variable]
    Close
    #1

Ya sé que cualquier programa de contabilidad mínimamente decente, como A3 o Logic y hasta ERPs más sofisticados como Microsoft Dynamics o SAP -siempre que ésto haya sido desarrollado ya que vale pasta-, generan estos ficheros, ya que sólo tienen que hacer una consulta a sus respectivas bases de datos y obtener como resultado la cadena de texto con el formato que se requiere por la AEAT.
De lo que se trata es abrir los ojos a la creación de ficheros, ya sean .txt o .xml, que nos permitan automatizar procesos contables. Lógicamente Excel no es el mejor entorno para crear aplicaciones de este tipo y desaconsejaría usar ésto en producción al menos que se tratase de la última alternativa. Creando una aplicación Windows usando Visual Studio se tendría una interfaz mucho más desarrollada, la implementación sería más sencilla y el mantenimiento del código sería más fácil. Pero con esto quiero demostrar que con Excel también se puede hacer.

En nuevas entregas desarrollaré el modelo 202 de pago fraccionado sobre impuesto sobre sociedades creando una aplicación Windows en Visual Studio y es posible que más adelante cree un Sitio Web ASP.NET y mostraré como publicarlo en el IIS.
Pues bien éste es el link al Excel y aquí pongo el vídeo donde explico paso a paso los pasos:

Crear y leer archivos de texto en Excel usando VBA (Spanish) from Raúl González on Vimeo.