Traducir el blog

Turnos Urgencias Hospital Análisis Fase 2

Posted on marzo 08, 2021 by Excel Pedro Wave

Planificación

Para acometer la planificación de la Fase 2 del proyecto Turnos Urgencias Hospital tuve que analizar la plantilla que envió la solicitante de ayuda, y este análisis es el que describiré en este artículo.

Si quieres entender mejor la teoría para hacer un buen análisis y planificación de un proyecto de desarrollo software, te remito a Internet, por ejemplo al siguiente enlace:

ANÁLISIS Y PLANIFICACIÓN


En el blog he escrito dos artículos hablando del proyecto de cálculo de turnos y ubicaciones en el Servicio de Urgencias de un hospital en tiempos de pandemia. Los artículos están dedicados a las dos primeras fases del proyecto Turnos Urgencias Hospital: 

Fase 1 de Inicio del Proyecto 

Fase 2 de Planificación del Proyecto


En la Fase 1 tomé la decisión de iniciar este proyecto porque merece la pena prestar ayuda desinteresada a los trabajadores esenciales de la sanidad que están luchando en primera línea contra la Covid-19 y qué mejor que automatizar en Excel algunas de sus tareas para que dediquen su tiempo a curar y salvar vidas.

En la Fase 2 planifiqué los objetivos y el plan del proyecto, su alcance y los recursos necesarios, fundamentalmente tiempo y dedicación de un autojubilado con conocimientos de Excel.

El objetivo principal es automatizar la rotación de las ubicaciones en cada turno, usando fórmulas de Excel, macros VBA o el complemento Solver.

En cada hito se entregará un prototipo funcional con el problema parcialmente resuelto. Ese prototipo lo valorará la solicitante de ayuda para corregirlo y mejorarlo en la siguiente entrega hasta obtener la solución deseada.


Análisis

Antes de pasar a la fase 3 de ejecución del proyecto, hay que analizar la plantilla original recibida en el primer mensaje solicitando ayuda.

Como esta plantilla está en el foro.todoexcel.com, quien quiera descargarla tendrá que registrarse en ese foro, accediendo a este enlace:

Urgencias hospital-Rotación puestos trabajo a turnos y con limitaciones


Esta figura está sacada de la plantilla, con la hoja de turnos de cada empleado por día del mes.


Análisis de la plantilla

Para poder planificar este proyecto tuve que hacer un análisis de la plantilla:

Ayuda web rotación puestos trabajo.xlsm

Su extensión .xlsm indica que contiene macros. Como el remitente es desconocido, hay que abrir el archivo sin habilitar su contenido para que no se ejecuten macros malintencionadas.

Abrimos el editor Visual Basic (VBA) con las teclas Alt + F11.

En el Módulo1 hay una subrutina ASIGNA sin ningún comentario en la macro, cosa poco profesional, pero con la primera instrucción creando una nueva Colección, cosa fuera del alcance de un usuario novato de macros y, por supuesto, fuera de la grabadora de macros.

Hace referencia al rango de CAPACIDADES, pero no está claro el rango de operación. Usa funciones aleatorias para identificar a los empleados con las capacidades necesarias e intenta que sean únicos en cada rotación. En la última instrucción copia la matriz de resultados obtenidos en el rando de operación.

Como no parece haber macros peligrosas, nada más que para los datos que sobreescriba, se puede volver a abrir el archivo habilitando el contenido y las macros.

Seleccionando la hoja de FEBRERO y ejecutando la macro ASIGNA desaparecen los días y los turnos de todos los empleados. ¡No asigna turnos ni ubicaciones!


Análisis de las hojas

Hay 3 hojas en el libro. La tercera hoja está vacía. La primera hoja contiene una tabla con las Capacidades según puesto, con la columna 1 con el número de empleado y en las demás columnas sus capacidades, marcadas con una letra x, como se aprecia en la siguiente figura:


La segunda hoja contiene los turnos de cada empleado en el mes de febrero, con una columna para cada día del mes. Marca si el turno es M de Mañana, T de Tarde y N de Noche. Cuando un empleado no puede acudir a su puesto por incapacidad temporal lo marca como MIT, TIT o NIT, y ese día no se pueden asignar ubicaciones a ese empleado. Si hay un signo de punto como M., T. o N. quiere decir que tiene jornada reducida y el resto de jornada lo hará otro empleado...

Esta hoja de febrero no tiene formatos condicionales para colorear celdas ni las columnas de sábado y domingo que aparecen con dos colores de relleno distintos. Tampoco hay ninguna fórmula ya que buscando con "Ir a Especial..." y seleccionando "Celdas con fórmulas", no se encuentran celdas con fórmulas. Tampoco hay fórmulas en la hoja con las Capacidades.

Una vez analizadas las dos hojas de esta plantilla, se comprueba que se deben rellenar manualmente, tanto para añadir puestos de empleados, como para añadir o actualizar sus capacidades y también para indicar sus turnos de trabajo cada día del mes.


Análisis de la macro original

Lo raro es que siendo tan elemental la plantilla, y sin ninguna fórmula, tenga una macro de nivel experto. Por lo que me dediqué a indagar de dónde había salido esa macro que no se corresponde con la plantilla de turnos.

Al final del tema solicitando ayuda, hay 4 temas similares, por lo que investigando cada uno, encuentro que el tema "Macro rotación de puestos de trabajo - NO CUADRANTE-" contiene una plantilla con la misma macro que buscaba: DISTRIBUCION.xlsm del usuario Goldfinger, en el siguiente enlace:

Macro rotación de puestos de trabajo - NO CUADRANTE-

Esa macro tiene una hoja de OPERACIONES con un botón llamado "Calcula" que obtiene empleados para rotar los puestos cada 2 horas en una jornada de 8 horas. Lo que no consigue es que en un turno de 2 horas los empleados sean únicos, ya que alguna vez repite el mismo nombre y, lo deja en blanco cuando no hay ningún empleado para un puesto con esa capacidad.


Conclusiones del análisis

Toyce, la usuaria que pedía ayuda para obtener las ubicaciones en los turnos del Servicio de Urgencias de un hospital, hizo lo que hace un usuario principiante de Excel, copiar y pegar código de Internet sin saber si es lo que necesita para resolver un problema y, sobre todo, sin saber cómo adaptarlo a su problema particular.

No sólo eso, compruebo que la plantilla que envió Toyce está creada a partir de la plantilla de Goldfinger, pues en las propiedades de los dos archivos su contenido fue creado el mismo día: 19-12-2016, cuando Goldfinger respondió a otra consulta del foro. La aportación de Toyce fue modificar las capacidades originales y añadir la hoja de turnos de febrero del Servicio de Urgencias hospitalarias.

Compruebo que hay mucho por hacer para automatizar esta plantilla, pues la macro suministrada no tiene nada que ver con el cálculo a realizar y no hay ningún tratamiento de datos en la plantilla original.


Vídeo con el análisis

Puedes ver el análisis descrito en el siguiente vídeo que he publicado en YouTube:

En el próximo vídeo pasaré a la fase 3 de ejecución de este proyecto, intentando resolver este problema aplicando el complemento de Excel: Solver

Atentos a las siguientas entregas de este proyecto, que creo que puede ser interesante e instructivo y puede prestar un buen servicio a los sanitarios de este país.

A tí, ¿qué te parece?

No Response to "Turnos Urgencias Hospital Análisis Fase 2"

Leave A Reply

Indícame las erratas que encuentres y qué es lo que te gustaría ver en los próximos artículos.

Mi lista de blogs