Hola a todos, he estado trabajando en el proyecto adjunto por un corto tiempo y pensé en compartirlo con el grupo. Para resumir brevemente, mi organización tenía un método previamente semi-desactualizado para rastrear el tiempo libre pagado para los empleados. Había un calendario integrado en Excel (similar a la hoja Calendario en mi archivo adjunto). Básicamente, un administrador ingresaba directamente en el calendario, lo que, como se puede imaginar, se convirtió en una tarea relativamente engorrosa a medida que la organización crecía. Reuní muchas de las ideas de Excel VBA que he tenido por experiencia previa para completar esta base de datos. Tomaré algunas notas aquí: entiendo que a nivel macroscópico, esto puede no ser tan refinado como adquirir una solución dedicada, pero por supuesto, esa no es una opción en este momento.

Además, el código es un poco complicado en algunos lugares porque no ha sido examinado y mejorado por completo. Finalmente, hay algunas cosas en algunas formas que pueden parecer extrañas (casillas de verificación que no llevan a ninguna parte). Probablemente se deba a que yo recorté el archivo para eliminar cualquier dato confidencial existente.

Como sugiere el título [ominosamente], hay una serie de elementos en el Libro de trabajo. Si tuviera que elegir un elemento en el que centrarme, sugeriría echar un vistazo al primer elemento: crear controles en tiempo de ejecución. Un problema con la transición a una estructura de base de datos fue la pérdida de descripciones generales departamentales que se proporcionarían a la administración. Claro, las hojas departamentales individuales se pueden vincular, pero eso crearía un modelo más lento y menos escalable. Además, diferentes gerentes solicitan diferentes tipos de información, por lo que es apenas una «aplicación única para todos».

Userform3 (¡lo sé, títulos creativos!) Permite que el administrador del libro de trabajo exporte cierta información a los informes según las necesidades.

Cuando se inicia el formulario de usuario, se completa un cuadro de lista que incluye los departamentos actuales. Además, se generan botones de alternancia que corresponden a cada campo de la hoja de trabajo DATOS, lo que permite exportar ese campo a un nuevo libro. El verdadero beneficio, a medida que se agregan o eliminan columnas (por ejemplo, eliminé nuestros números de presupuesto), el formulario de usuario se expande y contrae y agrega / elimina botones según la necesidad. Darle una oportunidad. Agregue una columna, luego inicie el formulario para ver que ahora está incluido en los botones de alternancia.

Además, hay una casilla de verificación en este formulario para Imprimir elementos, que imprimirá un informe y lo exportará a un nuevo libro de trabajo.

Cuando abre el libro de trabajo, debe haber una barra de herramientas flotante, con una opción para Informes (por lo que tengo entendido, esto no siempre funciona en Excel 2007, pero la barra de herramientas se puede encontrar en la pestaña Desarrollador de la cinta). Si aún no está visible, siempre puede presionar Alt + F8, luego elegir la macro ShowForm3 para ver el formulario de usuario de los informes.

Dejé todo el código en el libro de trabajo desbloqueado para el observador curioso y estoy feliz de responder cualquier pregunta relevante.