martes, 3 de noviembre de 2026

Consolidar Múltiples Archivos de Excel en Uno Solo Automáticamente con una Macro de VBA

 ¿Te ha pasado que al final del mes o de la semana recibes decenas de reportes de Excel de distintas sucursales, departamentos o colaboradores y pierdes horas copiando y pegando datos en una sola sábana gigante?



Este es uno de los dolores de cabeza más comunes en oficinas, áreas contables y administrativas. Hacerlo de forma manual no solo consume tiempo valioso, sino que es una fuente segura de errores humanos (filas duplicadas, datos corridos o celdas faltantes).

En este tutorial aprenderás a crear una macro en VBA robusta y reutilizable que te permite seleccionar una carpeta completa, leer de forma automática todos los archivos de Excel con la misma estructura (sin importar si tienen 5, 10 o 50 columnas) y consolidarlos en un único reporte maestro en segundos.

¿Cómo funciona esta macro?

  1. Flexibilidad de estructura: La macro identifica de forma dinámica la última columna y la última fila con datos de cada archivo seleccionado, adaptándose a cualquier formato o número de columnas que tenga tu reporte (siempre y cuando todos los archivos compartan la misma estructura de columnas).

  2. Respeto por el encabezado: Extrae los datos a partir de la fila 2 (asumiendo que la fila 1 contiene los encabezados), pegándolos secuencialmente en tu archivo maestro.

  3. Optimización de rendimiento: Utiliza un apagado temporal de alertas y actualización de pantalla (ScreenUpdating = False), lo que acelera el proceso de forma drástica al abrir y cerrar los libros en segundo plano.


¿Cómo agregar esta macro a la Cinta de Acceso Rápido de Excel?

Para que no tengas que entrar al editor de código cada vez que necesites consolidar un reporte, puedes colocar un botón dedicado directamente en la parte superior de tu pantalla (Barra de Herramientas de Acceso Rápido). Sigue estos sencillos pasos:

  1. En Excel, dirígete a Archivo > Opciones.

  2. En el menú de la izquierda, selecciona Barra de herramientas de acceso rápido.

  3. En el desplegable superior "Comandos disponibles en:", cambia la opción por Macros.

  4. Busca y selecciona tu macro: 'NombreDeTuLibro.xlsm'!ConsolidarArchivosCarpeta.

  5. Haz clic en el botón Agregar >> ubicado al centro.

  6. (Opcional) Selecciona la macro agregada en la columna derecha, haz clic en Cambiar... y asígnale un icono representativo (como una carpeta o una libreta) y un nombre amigable.

  7. Haz clic en Aceptar.

¡Listo! Ahora verás un nuevo icono permanente en la parte superior izquierda de tu ventana de Excel. Cada vez que tengas tus reportes listos en una carpeta, solo bastará con hacer clic en ese botón, seleccionar la ruta y dejar que Excel haga todo el trabajo por ti.

Recomendaciones clave antes de ejecutar:

  • Consistencia de columnas: Asegúrate de que todos los archivos de la carpeta compartan exactamente el mismo orden de columnas (por ejemplo: Columna A = Fecha, Columna B = RFC, Columna C = Importe). La macro apila la información basándose en el orden de las columnas de izquierda a derecha.

  • Respaldo: Recuerda que esta macro agrega la información de manera consecutiva al final de los datos existentes en tu hoja activa. Si deseas un reporte limpio, asegúrate de vaciar la hoja maestra antes de volver a ejecutar el proceso.



Les dejo el archivo a continuacion para que puedas descargarlo y agregarlos a su lista de macros.



Recuerda que si necesitas una modificacion especial para un reporte o trabajo que te este causando muchos dolores de cabeza, puedes contactarnos para resolver tu problema.


Saludos

JASR



miércoles, 23 de septiembre de 2026

Macro VBA para copiar archivos XML y PDF

 

Como copiar archivo de un directorio a partir de una lista de nombres en un rango de celdas en Excel.


He tenido el siguiente problema en estos dias, que me toco resolver de manera facil mediante el diseño de una macro.



Me solicitaron por una revision de control interno (Auditoria) un listado de facturas previamente seleccionadas por el revisor, para entregrar el archivo PDF y el archivo XML de esa lista de CFDI. Lo complicado resulta que dentro de la carpeta donde tengo esa informacion tengo miles de archivos y para poder ir copiando los que me solicitaban se me hizo una tarea interminable ir buscando uno a uno los archivos solicitados, ya que la solicitud era de mas de 3,000 archivos y tenerlos que buscar en una carpeta que tiene mas de 15,000 archivo resulto se complicado, por lo que me di a la tarea de diseñar una macro que hiciera la busqueda en la carpeta origen y la copiara a la carpeta destino.

Les comparto el archivo de ejemplo que al final pude hacer todo ese trabajo en menos de 1 minuto.

En una hoja de Excel en la columa "A" copie todos los UUID que necesitaba buscar para recorrerlos con la macro, y la macro se encargo del resto, les dejo el archivo por si necesitan adaptarlo a otro tipo de proyectos haciendo las modificaciones que necesiten.


DESCARGAR_ARCHIVO


Saludos cordiales.

JASR

lunes, 21 de septiembre de 2026

XML from hoja de calculo Google Sheet

 

XML FROM GOOGLE SHEET

    Migrar a hojas de calculo de otras plataformas libre de costo de licencias siempre sera una opcion, y mas aun cuando la informacion puede ser guardada en la nube para tenerla a disposicion desde cualquier parte.



Hoy quiero mostrarles que desde hace tiempo tengo implementada este complemento como parte de mis herramientas de consulta, desde la hoja de calculo de google, puedo leer los XML de mi pc o usb, o las que tengo guadadas en mi Drive, y desglosarlo en la hoja de calculo de google sheet.


XML FROM HOJA DE CALCULO GOOGLE SHEET



Asi cuando estoy fuera no necesariamente tengo que traer mi laptop o pc cargando para poder hacerlo, simplemente puede acceder desde cualquier lugar con mi cuenta de google y poder sacar reportes que necesite en el momento.



Las opciones de portabilidad siempre seran necesarias.


saludos

JASR

sábado, 23 de agosto de 2025

Creando base de datos y tabla con Microsoft Access.

 

Crear una Base de Datos y Tabla en Microsoft Access

Paso 1: Abrir Microsoft Access y crear una nueva base de datos

  1. Abre Microsoft Access.
  2. Selecciona "Base de datos de escritorio en blanco".
  3. Asigna un nombre al archivo (por ejemplo, Inventario.accdb) y haz clic en Crear.
      

Paso 2: Crear una tabla desde vista de hoja de datos

  1. Access abre automáticamente una tabla vacía llamada Tabla1.
  2. En la columna ID, Access genera un campo autonumérico por defecto.
  3. Haz clic en "Haga clic para agregar" y selecciona el tipo de campo (Texto corto, Número, Fecha/Hora, etc.).
  4. Escribe el nombre del campo (por ejemplo: Producto, Cantidad, Precio).
        


Paso 3: Cambiar a vista de diseño para definir tipos y claves

  1. Haz clic derecho sobre la tabla y selecciona "Vista de diseño".
  2. Asigna un nombre a la tabla (por ejemplo, Productos).
  3. Define los campos:
  • IDProducto → Tipo: Autonumeración (Clave primaria)
  • NombreProducto → Tipo: Texto corto
  • Cantidad → Tipo: Número
  • PrecioUnitario → Tipo: Moneda
        

    Paso 4: Guardar y cerrar la tabla

  1. Haz clic en Guardar (Ctrl + S).
  2. Cierra la tabla para volver al panel principal de Access.

Crear una base de datos es muy simple, sin embargo para la creación de las tablas si que debemos tener conocimiento de lo que queremos hacer y que información deseamos guardar, con Microsoft Access podemos hacer cualquier aplicación comercial que veas funcionando en una computadora, un punto de venta, un sistema contable, un sistema reloj de control de asistencias, un sistema de nominas, incluso utilizar la base de datos para desarrollar una aplicación web, conectar Access a una base de datos MySql, Microsoft SQL Server, MariaDB, PostgreSQL, Firebird, SQLite, etc.
A lo largo de estos artículos iremos construyendo una aplicación, para controlar el personal de una pequeña empresa.

Seguimos ...


Saludos

AppsJasr


lunes, 4 de agosto de 2025

Microsoft Access vs Microsoft Excel.

¿Qué es Microsoft Access y para qué sirve?

Microsoft Access es una herramienta de gestión de bases de datos desarrollada por Microsoft, incluida en la suite de Office. A diferencia de Excel, que se enfoca en hojas de cálculo, Access permite crear, administrar y consultar bases de datos relacionales de manera eficiente.

Access combina una interfaz gráfica intuitiva con el poder del lenguaje SQL y la posibilidad de automatizar procesos mediante macros y VBA (Visual Basic for Applications). Es ideal para pequeñas y medianas empresas que necesitan controlar información estructurada sin invertir en sistemas complejos como SQL Server u Oracle.



¿Qué es una base de datos relacional?

Una base de datos relacional es un sistema que organiza la información en tablas relacionadas entre sí mediante claves primarias y foráneas. Cada tabla representa una entidad (por ejemplo, clientes, productos o ventas), y las relaciones permiten vincular datos de forma lógica y estructurada.

Características clave:

  • Integridad referencial: garantiza que las relaciones entre tablas sean válidas.
  • Normalización: evita la duplicación de datos y mejora la eficiencia.
  • Consultas SQL: permiten extraer, filtrar y combinar información de múltiples tablas.

Access implementa este modelo relacional de forma visual, facilitando la creación de relaciones entre tablas sin necesidad de escribir código complejo.

Diferencias entre Microsoft Access y Excel

Aunque ambos programas pertenecen a Microsoft Office, tienen propósitos distintos:

Característica Microsoft Access Microsoft Excel
Tipo de herramienta Gestor de bases de datos relacional Hoja de cálculo
Estructura de datos Tablas relacionadas Celdas en hojas independientes
Volumen de datos Maneja grandes volúmenes con eficiencia Limitado por filas y rendimiento
Automatización Macros y VBA orientado a datos Macros y VBA orientado a celdas
Consultas y filtros SQL, consultas avanzadas Filtros básicos y fórmulas
Seguridad y control Control de acceso por usuario Menor nivel de seguridad estructural

Conclusión: Excel es excelente para análisis rápidos y cálculos, mientras que Access es ideal para almacenar, relacionar y consultar grandes volúmenes de datos de forma estructurada.

¿Qué aplicaciones se pueden desarrollar con Microsoft Access?

Access permite crear aplicaciones completas de gestión de datos, con formularios personalizados, informes automatizados y lógica de negocio integrada. Algunas aplicaciones comunes incluyen:

Ejemplos de aplicaciones:

  • Control de inventarios con alertas de stock bajo.
  • Gestión de clientes y ventas con historial y seguimiento.
  • Sistema de facturación con cálculo automático de impuestos.
  • Registro de empleados y asistencia con reportes mensuales.
  • Seguimiento de proyectos con cronogramas y responsables.
  • Control de gastos por departamento, alineado a políticas fiscales.

Además, Access puede integrarse con otras herramientas como Excel, Outlook, SQL Server y servicios web mediante APIs, lo que lo convierte en una plataforma versátil para automatizar procesos administrativos.

Conclusión

Microsoft Access es una solución poderosa y accesible para quienes necesitan gestionar información de forma estructurada, segura y escalable. Su enfoque relacional, combinado con herramientas de automatización y presentación, lo convierte en una excelente opción para desarrollar aplicaciones empresariales sin necesidad de conocimientos avanzados en programación.

¿Estás listo para transformar tus procesos con Access? ¡Empieza hoy y lleva tu gestión de datos al siguiente nivel!


Saludos

JASR