domingo, 7 de junio de 2015

Generar archivos de texto (.txt) en MS. Excel

Generar archivos de texto ( .txt ) en MS Excel

Muchas veces necesitamos cargar grandes cantidades de información a nuestros programas contables, como por ejemplo: ventas, asientos de cancelación, etc. También, pagos masivos a través de las paginas web de los bancos nos solicitan archivos de texto, servicios del gobierno y en muchas otra ocasiones.

Normalmente, los programas contienen una opción para importar registros a través de archivos de texto, y usualmente tenemos la información en hojas de cálculo; entonces el problema se reduce a transformar los datos contenidos en Excel a  un archivo de texto con un formato establecido por el software.

En fin, hoy veremos como podemos lograrlo.

Tipo de archivos

Para empezar, existe dos tipos de archivos de texto:
-Archivos posicionales;
-Archivos delimitados.

El primero es un archivo donde cada campo se establece en una posición especifica. Los archivos delimitados separan sus campos con delimitador que puede ser una coma "," o cualquier caracter.

Supongamos que nuestros registros son los siguientes:


Factura RUC Importe
001-001253 20123456789 S/. 100.00
001-001253 20123456780 S/. 100.00

En los archivos posicionales la separación de campos se establece por la posición que ocupan.

En cambio en los archivos delimitados la separación se establece con una coma "," por ejemplo.


Métodos
Existen muchas formas de lograr nuestro propósito, pero nos centraremos en dos:

- Generar archivos de texto con formulas.
-Generar archivos de texto con ayuda de macros.

Easy Excel, easy life.

Formulas útiles

Para lograr archivos posicionales, normalmente debemos completar los campos con espacios en blanco o ceros. En nuestro ejemplo de la posición 1 a la 10 debe estar el primer registro, supongamos que nuestro campo solamente tiene 9 caracteres, debemos pues, completarlo con espacio en blanco.

Nuestros registros no tienen todos las mismas longitudes y por ello debemos concatenarlos con formulas condicionales. Para comprobar el largo del campo que queremos insertar utilizamos la formula LARGO, para insertar espacios en blanco usamos la formula REPETIR, para completar con ceros a la izquierda nuestros importes usamos la formula TEXTO, y por si no es obvio  para concatenar la formula CONCATENAR.

Supongamos (sí me gusta suponer), que la posición de los campos debe ser la siguiente

Campos Longitud Posición
Factura 12 1-12
RUC 11 13-23
Importe 6 24-39

Nuestra formula sería la siguiente:

Que en buen cristiano significa: Excel, une el contenido de la celda "A2" con el número de espacios en blanco que resulte de la diferencia de 12 y el largo de la celda "A2".

Para poner ceros a la izquierda debemos de utilizar la formula texto, que también nos sirve para poner la fecha en el formato que queramos.

Añadir ceros a la izquierda nunca fue más fácil.

La formula Texto en acción.


Para archivos delimitados solo necesitamos la formula CONCATENAR

Explicar cómo generar archivos de texto con vba, merece otra entrada.

Nos vemos por aquí, la próxima!


domingo, 26 de abril de 2015

Trabajando con Excel

Trabajando con Excel


Si de algún programa sabemos los contadores ese es Excel. Hay muchas cosas útiles en este programa de Microsoft y debemos de aprenderlas.

La contabilidad, como ustedes sabrán, se encarga del registro y consolidación de las operaciones diarias en una empresa, entre otras cosas. Pues bien, es el volumen de información el que hace difícil el quehacer contable. Y es por eso que Excel va en nuestro auxilio.

Veamos un poco como nos puede ayudar.

Las tablas dinámicas

Sí, empezamos con temas intermedios. Normalmente, el tema de tablas dinámicas no se enseña en cursos básicos, pero en realidad son muy fáciles de aprender y muy útiles también.

Las tablas dinámicas sirven para resumir información, además tienen la capacidad de actualizar los datos resumidos al hacer algún cambio. y también pueden cambiar la forma de de mostrar los datos.

¿Suena bien, verdad?  Veamos un ejemplo:

Primero necesitamos los datos que vamos a resumir, por cortesía de excel negocios, tenemos el diario de operaciones.


Entonces nos dirigimos a Insertar y luego a tablas dinámicas.





















Y le damos aceptar. Y que así:





Tenemos que elegir los "campos de la lista de campos" tal como indica Excel, así que arrastramos con el ratón el campo "código" a cuadricula de "filas" y los campos "Debe" y "Haber" a "valores".

Esto hace que tengamos un resumen por código de cuenta contable de los movimientos en debe y haber. Pero queremos también la diferencia de ambos, nos vamos a la pestaña de "analizar" y luego a "insertar campos"




















Le colocamos el nombre de "saldo", seleccionamos el concepto de "Debe" agregamos el simbolo de resta "-" y finalmente insertamos el concepto de "Haber"


Así obtenemos la el saldo de cada cuenta. Pero nosotros necesitamos un resumen más conciso, un resumen a nivel de dos dígitos. Entonces vamos a la hoja donde se encuentran el diario, y en la última columna usamos la fórmula de "EXTRAER" o "MED", según su versión de Excel y extraemos, cual dentista, las dos primeras cifras


En seguida arrastramos la fórmula hacia la última fila necesaria, llamamos a nuestra columna "cuenta", como paso siguiente regresamos a la tabla dinámica y nos ubicamos en la opción de "cambiar origen de datos", rápidamente incluimos la columna agregada recientemente y le damos aceptar.

Entonces, cambiamos el campo de "código" de la cuadricula "filas" por el nuevo campo de "cuenta". Así conseguimos un informe decente en cuestión de segundos, esto claro se puede hacer de otras maneras, usando formulas como SUMAR.SI, por ejemplo.

Pero las tablas dinámicas ofrecen una velocidad que se nota cuando hay mucha data, si ponemos 100,000 filas nuestras queridas tablas no tendrían problema alguno. Sin contar el hecho que no causaría la clásica lentitud de Excel cuando hay mucha información.

El ejemplo queda así, lo puedes descargar aquí.




Si usted, estimado lector, no ha logrado asimilar este tema, le recomiendo que busque tutoriales de tablas dinámicas en YouTube, que hay muy buenos, por ejemplo este.

Eso es todo por hoy, en el siguiente post veremos más cosas útiles en Excel.
-



miércoles, 25 de marzo de 2015

Cómo practicar nuestros asientos contables

Cómo practicar nuestros asientos contables

Cuando logramos entender el principio de la partida doble, el siguiente paso es poner a prueba nuestros conocimientos. Pero, ¿cómo practicamos?

Lo ideal es tener ejemplos de hechos económicos y escribir nuestros asientos contables, pero luego de algunos asientos tendremos la necesidad de ver esos asientos convertidos en estados financieros.Este post intentará dar algunas ideas de como podríamos lograr esto.

Estos son los métodos:

- Utilizar Microsoft Excel,
- Aprender Microsoft Access.
- Usar un programa contable.
- Crear nuestro propio software.


Microsoft Excel
Hablemos un poco de estas opciones. Excel es un poderoso programa usado por muchas personas, ademas es muy flexible ya que tienen una infinidad de opciones. Es muy usado en labores administrativas y por si fuera poco, Excel permite programar en su interface ( los famosos macros).



Papá Excel.



Sin embargo, la flexibilidad es también su punto débil, debido a que en una misma columna puede almacenar cualquier cosa es muy difícil manejar grandes volúmenes de datos. En base a mi experiencia, a partir de las diez mil filas de datos es complicado el trabajo con Excel.


Microsoft Access

Si la gente usara Access como usa el Excel se acabarían las guerras, bueno no tanto ...
Access es un programa desarrollado por Microsoft que no es aprovechado en todo su potencial, las ventajas que ofrece son las siguientes:
- La posibilidad de guardar datos de manera ordenada y estructurada.
- Realizar reportes complejos automatizados (un click y listo)
- Modificación de datos masivamente.
- Programar tareas repetitivas.

Hablaremos de Access largo y tendido en futuras entradas.

Programas

Trabajar con un software contable es la opción que más recomiendo, debido que nos ahorra la consolidación de datos y los reportes. No es que no se pueda con Excel, pero usar un programa es la manera más eficaz.

En el mercado existe mucho software disponible gratis y de pago. Yo me concentraré solo en lo que podemos usar sin pagar nada.

Programar, programar 

Finalmente, y como la opción menos recomendable para recién iniciados, podemos construir nuestro propio software. Antes, claro, tenemos que aprender a programar y antes elegir un lenguaje de programación de los muchos que hay (puedes ver una lista aquí), En realidad no es una buena idea estar construyendo un programa habiendo tantos disponibles.

¿Y que tiene de bueno aprender a programar? Bueno, programar te ahorrará muchas horas de tareas repetitivas, podrás ampliar las funcionalidades de tu software, adaptarás los programas a tus necesidades y muchas otras ventajas.

Entonces, veremos como trabajar con Excel en el siguiente post.