Dante, gracias por tu respuesta y te agradezco infinitamente tu gran disposición a ayudarme.
Trataré de responder tus preguntas en orden. Espero explicarme bien.
Estoy a punto de liberar mi primer sistema con macros en Excel pero tengo muchas dudas por mi desconocimiento y falta de experiencia en este lenguaje.
Se trata de un sistema de inventarios donde se deben registrar todos los movimientos de almacén. Estos son: dos tipos de entradas y dos tipos de salidas de productos a clientes y distribuidores en cada zona.
Cada movimiento de productos de almacén genera un registro en una base de datos que servirá como base para la facturación mensual.
Se deben mantener actualizados, a ritmo de operación, cuatro archivos históricos. Cada archivo histórico contiene todos los movimiento de un sólo tipo de los cuatro tipos posibles de movimientos de almacén.
Estamos iniciando la etapa de pruebas captura de movimientos en tiempo real y se esperan muchos probables cambios y ajustes al sistema mientras se lleva a cabo la captura de movimientos por parte del cliente.
Por el momento instalé el sistema en la oficina del cliente con un solo libro principal. Con este se abre el sistema y desde ahí se hace todas las operaciones. En este libro se encuentra la base de datos, los parámetros de control del sistema, formatos de captura de movimientos de almacén, catálogos de productos, además de inventarios actualizados de cada almacén propio y de distribuidores pero también tengo ahí toda la codificación de las macros. En otros 4 libros aparte tengo los archivos históricos. Cabe mencionar que el cliente puede generar un respaldo del libro principal en cualquier momento.
En un momento dado podría tener desde dos hasta seis libros abiertos.
Mientras el cliente hace sus primeras capturas, yo estoy intentando pasar la gran mayoría de las macros a otro Libro de Macros para poder realizar libremente los cambios y pruebas de escritorio que requiera en mi oficina.
Espero que esta separación de las macros también me ayude para poder actualizar fácil y rápidamente la codificación de las macros únicamente en ese libro sin afectar los datos que ya haya capturado el cliente durante estos días, además, no estoy seguro pero me parece que también me conviene por cuestiones de seguridad...
Por desconocimiento no he encontrado la manera de dejar todas las macros en un solo libro por separado, así que en este momento también tengo en el Libro de Datos unas cuantas macros que sólo sirven para entrar y salir del sistema, salvar el libro de datos y salir de Excel. Desde ese Libro de Datos quiero tener el control para abrir y cerrar el Libro de Macros que contiene la gran mayoría de las macros.
Desde que estoy intentando separar la gran mayoría de las macros y manejarlas en un libro aparte, he estado teniendo problemas para controlar la ejecución de algunas macros, creo que por problemas de direccionamiento...
Quiero almacenar el nombre del libro para mantener el control sobre los libros que pueden estar abiertos en cada momento.
Para efectos de control de versiones del sistema, en este momento de las pruebas estoy probando la actualización automática del número de versión. En el nuevo Libro de macros tengo una macro que, cada vez que se salva el Libro de Macros, automáticamente me deja, en la celda "AA1" de la "Hoja1" de ese mismo libro, lo que para mí sería el "Número de Versión". Este Número de Versión lo conformo con el año (4 dígitos), el mes (2 dígitos), el día (2 dígitos), la hora (2 dígitos) y el minuto (2 dígitos).
Cada vez que se abre el Libro de Datos primeramente solicita y verifica la contraseña para uso del sistema.
Después copia en la celda "A1" de la hoja "Menú Principal" del Libro de Datos la versión del sistema que se encuentre en la celda "AA1" de la Hoja1 del Libro de Macros. Así puedo saber qué versión del sistema está corriendo el cliente mientras yo en mi oficina sigo generando nuevas versiones, realizando cambios, pruebas o atendiendo nuevas peticiones del cliente... Esto es lo que me gustaría que hiciera correctamente esta macro que me está fallando... :(
No sé si me expliqué. Si me faltó cualquier cosa, por favor dime. Mil gracias por tu inestimable apoyo, Dante. Saludos!