Traducir el blog
Calendario Laboral Dinámico en Excel
🔝To translate this blog post to your language, select it in the top left Google box.
Visto el éxito que ha tenido mi anterior artículo:
Calendario en Excel con una tabla dinámica
Me he propuesto aprovechar el calendario de la tabla dinámica para crear un calendario laboral, importando las fechas dinámicamente.
En la siguiente imagen se ve el aspecto de este calendario laboral, con una segmentación para seleccionar el año, con los colores para distinguir los días festivos nacionales, regionales y locales, con el día de hoy coloreado en amarillo, con los fines de semana en rojo claro, con los 12 meses del año elegido y con hasta 4 festivos visualizados por cada mes.
Voy a explicar las características más relevantes de este calendario con la intención de que seas capaz por tí mismo de adaptarlo a tus necesidades o de crear tu propio calendario, ¿te parece?
Yo, Pedro Wave, estoy publicando bajo una licencia Creative Commons License:
Attribution-NonCommercial-ShareAlike 3.0 Unported (CC BY-NC-SA 3.0)
https://creativecommons.org/licenses/by-nc-sa/3.0/
Los términos de la licencia son:
- Atribución: Otorgue el crédito apropiado, especialmente mantenga mi nombre y el nombre de mi blog en el libro de trabajo y el código.
- Compartir igual: Regalarlo gratis. Lo estoy regalando gratis, así que también tiene que hacerlo igual.
- No comercial: No use mi plantilla y código para crear una plantilla o libro de trabajo para la venta comercial.
Descarga este calendario laboral desde Google (con el botón "Excel Download") o desde el enlace a Microsoft OneDrive:
Calendario_Laboral_Dinámico_PW1.xlsx
En este vídeo puedes seguir las explicaciones de cómo he creado este calendario:
Si después de ver el vídeo no te ha quedado claro o prefieres las explicaciones paso a paso, sigue leyendo.
A continuación daré una explicación de cómo crear un calendario laboral a partir de una tabla dinámica.
Características más relevantes del calendario laboral:
- Admite un rango de años desde 2020 hasta 2050.
- Muestra los 12 meses del año como 4 trimestres.
- El calendario se puede imprimir.
- Los festivos nacionales, regionales y locales están coloreados y se describe cada día festivo.
- El día de hoy está coloreado de amarillo, y se selecciona con un hipervínculo.
- Se pueden mostrar u ocultar los números de semana, siempre que la hoja esté desprotegida. Las columnas con los números de semana están agrupadas:
- Nivel 1: Oculta las columnas B; K y T.
- Nivel 2: Muestra las columnas B; K y T.
Para diseñar este calendario hacen falta 4 hojas:
- 'Calendario_Laboral': con el calendario dinámico.
- 'Eventos': con la tabla de eventos, por ejemplo con los días festivos.
- 'Calendario Dinámico': con la tabla dinámica en forma de calendario. Se puede ocultar.
- 'Fechas': con la tabla de fecha que es el origen de datos de la tabla dinámica. Se puede eliminar.
Todas estas hojas están protegidas sin contraseña.
Hoja 'Fechas'
En esta hoja está el origen de datos de la tabla dinámica, como una tabla de 11.324 filas, con fechas del 1 de enero de 2020 al 31 de diciembre de 2050.
Hacen falta 3 campos para la tabla de fechas:
- Fecha: el primer día es el 1 de enero de 2020 y los demás se obtienen añadiendo un uno al día anterior: =A2+1
- Día de la semana: =DIASEM([@Fecha];2)
- Número de semana: =NUM.DE.SEMANA([@Fecha];2)
El segundo argumento vale 2 para que los días de la semana vayan del 1-lunes al 7-domingo.
Después de generar la tabla dinámica, esta hoja de fechas se puede eliminar para reducir el tamaño del archivo y aumentar su rendimiento.
Hoja 'Calendario Dinámico'
En esta hoja se ha creado un calendario a partir de una única tabla dinámica, con este aspecto:
Si quieres saber cómo crear este calendario dinámico debes leer este artículo de mi blog:
TRUCO: La segmentación de datos de "Años" sólo permite seleccionar un único año.
Si se selecciona más de un año, salta un mensaje de advertencia:
"No se puede cambiar parte de una celda combinada."
Para continuar presiona el botón: Aceptar
Se han combinado celdas a propósito en la fila 94 para:
"NO PASAR DE ESTA FILA - Seleccionar un único año"
TRUCO: Con estas celdas combinadas se consigue que no pueda crecer la tabla dinámica y, por lo tanto, no se pueda seleccionar más de un año…
ATENCION: La hoja 'Calendario Dinámico' se puede dejar oculta por ser auxiliar para calcular los datos del calendario laboral.
Hoja 'Eventos'
Esta hoja contiene la tabla de eventos con 3 campos:
- Fechas: Con los días festivos.
- Tipos de fechas: Nacionales; Regionales y Locales.
- Eventos: Descripción del festivo.
Como ejemplo se han incluido los festivos de 2020 y 2021 para la ciudad de Zaragoza, Aragón, España.
Los eventos festivos pueden ser manualmente editados, añadidos y eliminados para incluir los festivos de tu pueblo o ciudad hasta el año 2050.
Hoja 'Calendario_Laboral'
El año del calendario se elige con la segmentación de datos de "Años".
La segmentación en 2 filas permite seleccionar un año del 2020 al 2050.
Como esta segmentación de años está conectada con la tabla dinámica que hemos visto antes, si seleccionas más de un año salta la advertencia:
"No se puede cambiar parte de una celda combinada."
Para continuar presiona el botón: Aceptar
Los nombres de los meses (con formato de celda: mmmm) se obtienen para el año 2000 (fuera del rango de años del calendario) con las fórmulas:
- enero: =FECHA(2000;1;1)
- resto de meses: =FIN.MES(B7;0)+1
Los nombres de los días de la semana se obtienen de la tabla dinámica con fórmulas del tipo: ='Calendario Dinámico'!C$3
Los números de semana se obtienen así:
- La primera semana de enero: =1
- La primera semana de febrero a diciembre es la penúltima semana del mes anterior, si no está completa, y es la última semana del mes anterior si la penúltima está completa: =SI(CONTAR.SI(C13:I13;0)>0;B13;B14)
- Para otras semanas se añade un 1.
ATENCION: Los días (formato de celda: d) se obtienen con la función para importar datos de la tabla dinámica:
=SI.ERROR(IMPORTARDATOSDINAMICOS("Fecha";'Calendario Dinámico'!$B$2; "Fecha";MES($B$7); "Día Semana";C$8; "Núm. Semana";$B9; "Años";$K$2);0)
Por ejemplo, para el mes de enero:
- El mes se obtiene de la cabecera con el nombre del mes. En este caso de la celda $B$7
- El día de la semana se obtiene de la fila con los nombres de los días, de "lun" (C$8) a "dom" (I$8).
- El número de semana se obtiene de la columna $B y filas 9 a 14.
- El año se obtiene de la celda $K$2 con el año elegido.
IMPORTANTE: Todas las fechas son fechas de Excel con sus números de serie. Que sean fechas de Excel ayuda a buscarlas en la tabla de festivos para aplicarles formatos condicionales.
En el menú: Fórmulas - Administrador de Nombres se pueden analizar los nombres definidos que se usan en las fórmulas de este calendario.Comienzan por "Rango_"
Con 3 nombres se definen las columnas de la tabla de eventos: TablaEventos
Rango_Hoy llama a la función: =HOY()
Debajo de cada mes hay hasta 4 días festivos y su descripción, gracias a una fórmula matricial oculta (con formato: ;;;) en las columnas con los números de semana.
Las fórmulas matriciales se introducen presionando a la vez las teclas: Control + Mayúsculas + Intro
Aparecen automáticamente unos corchetes.
Fórmula matricial del rango B16:B19:
{=SI.ERROR(K.ESIMO.MENOR(SI($K$2 & MES(B7)=AÑO(Rango_Fechas) & MES(Rango_Fechas); FILA(Rango_Fechas)-MIN(FILA(Rango_Fechas))+1;""); FILA()-FILA(B15));0)}
El día festivo se obtiene con:
- C16: =SI(B16=0;""; INDICE(Rango_Fechas;B16))
- D16: =SI(B16=0;""; INDICE(Rango_Eventos;B16))
{=DIRECCION( MIN(SI(Rango_Hoy=Rango_Calendario;FILA(Rango_Calendario);100)); MIN(SI(Rango_Hoy=Rango_Calendario;COLUMNA(Rango_Calendario);100)))}
Se obtiene un texto con la celda del día de hoy o $CV$100 si el año seleccionado no contiene hoy.
La fórmula con el hipervínculo al día de hoy está en la celda W4:
=HIPERVINCULO("[" & SUSTITUIR(CELDA("nombrearchivo");"[";"") & "!" & SI($V$4="$CV$100";"$T$2";$V$4);Rango_Hoy)
Al hacer clic en el hipervínculo se selecciona el día de hoy.
- Entresemana (blanco crudo): =Y(DIASEM(B7;2)<6;B7>40000)
- Fin de semana (anaranjado claro): =Y(DIASEM(B7;2)>5;B7>40000)
- Hoy (amarillo): =Y(B7=Rango_Hoy;B7>40000)
Con 3 formatos condicionales se colorean los tipos de días festivos. La fórmula es: =Y(B7>40000;SI.ERROR(INDICE(Rango_Tipos;COINCIDIR(B7;Rango_Fechas;0));"")=INDICE(Rango_Tipos_Fechas;n;1))
Siendo n:
- 1 - Nacionales: verde.
- 2 - Regionales: azul.
- 3 - Locales: púrpura.
Las fórmulas se aplican a valores de celda >40000, por lo que no se aplica formato condicional a fechas anteriores al año 2010. Como se han usado fechas del 2000 para los nombres de los meses, éstos no cambian de color con el formato condicional.
NOTA: Se pueden cambiar estas celdas:
- B2: Calendario Laboral, con el nombre que quieras, por ejemplo: Calendario Fútbol
- T2: Zaragoza, con el nombre de tu pueblo o ciudad.
En estas 4 celdas se definen los tipos de días:
- Z63: Festivos
- Z64: Nacionales
- Z65: Regionales
- Z66: Locales
BONUS: Si quieres que sea un calendario con los partidos de fútbol de tu equipo favorito, edita las celdas:
- Z63: Fútbol
- Z64: La Liga
- Z65: Champions
- Z66: Copa del Rey
Y edita la hoja 'Eventos' con estos 3 tipos de fecha.
Para hacer este calendario me he inspirado en las siguientes páginas, a cuyos autores les estoy muy agradecido:
AyudaExcel.com Sergio Propergol Plantillas calendario en Excel 2021
ExcelFORO Ismael Romero Calendarios en Excel. Fórmulas desbordadas
xelplus.com Leila Gharani Excel Calendar with Just ONE Formula!
Espero que este calendario anual, basado en una tabla dinámica, te sirva y te ayude a preparar tus propios calendarios.
Si encuentras una errata, avísame mediante un comentario para subsanarla en una próxima revisión. Gracias anticipadas por tus comentarios.
Tienes más ejemplos de mis calendarios publicados en esta página de mi blog:
Prueba este nuevo calendario dinámico mucho más avanzado:
Mi lista de blogs
-
Nueva Función TRIMRANGE y Nuevo Operador de Rango - Hoy vengo con novedades emocionantes en Excel: Microsoft ha liberado una nueva función llamada TRIMRANGE y ha introducido un nuevo […] The post Nueva Fun...Hace 1 día
-
Divisor propio mayor que la raíz cuadrada - Explorando por OEIS, encontré un tipo de números en https://oeis.org/A332269 y me ha apetecido desarrollar el tema mediante nuestras funciones en hoja ...Hace 2 días
-
PASAR DATOS A FILAS SEGÚN ELEMENTOS ENTRE GUIONES UTILIZANDO POWER QUERY - Hola a todos! Después del post anterior (aquí) en el que realizábamos una tarea utilizando VBA, me gustaría replicar el mismo trabajo pero usando Power …...Hace 4 días
-
3DFrame-py; with non-linear analysis - Exactly a year since the previous update I have revised the 3DFrame-py spreadsheet with the addition of non-linear analysis options. The new files can be d...Hace 4 días
-
Tiempo pasado, presente y futuro - 🔝*To translate this blog post to your language, select it in the top left Google box. * AVISOS que salvan vidas Haciendo caso de las posibles inund...Hace 6 días
-
Color, Conditions, and Copilot: How to save time using conditional formatting with Copilot in Excel - Hi everyone, this is part 11 in a series of posts to show you some of the things that are possible to do with Copilot in Excel. *What is conditional f...Hace 6 días
-
5 Ways to Calculate Hours Worked in Microsoft Excel - Wondering how to calculate hours worked in Excel? You’ve reached the best resource to learn from. So, tag along! Calculating time values in Microsoft Excel...Hace 1 semana
-
Insertar un objeto vinculado en Excel es fácil y práctico - Aprende a insertar un objeto en Excel. Ya puedes traer objeto vinculado en Excel de manera más avanzada que con los comandos Copiar y Pegar te permiten t...Hace 1 semana
-
Debra’s Excel News–October 2024 - New PIVOTBY function, get ready for Spreadsheet Day, and more, in this month’s Excel news. Visit my Excel website for more tips, tutorials and videos, and ...Hace 4 semanas
-
4 ejemplos de utilización de validación de datos con fórmulas - Ya sabes que la herramienta de Validación de datos es de gran utilidad para controlar y restringir la introducción de datos y así, asegurarte de…Hace 1 mes
-
Trucos de Excel: Referencias Relativas, Absolutas y Mixtas Explicadas ✨ [VIDEO] - ¡Hola a todos! Hoy hablaremos sobre un tema muy importante para quienes usan Excel: los tipos de referencia. Las referencias son fundamentales al momento d...Hace 1 mes
-
How To Predict Bearing Life With Excel - When you work in mechanical engineering, understanding the reliability and performance of bearings under various conditions is crucial. Bearings are the co...Hace 2 meses
-
How to calculate WEEKNUMBER in Month / Quarter / Year with Excel? - Let's say you have daily data and your boss wants to see the trends by week in month or week in quarter? How do you calculate the week number in a month ...Hace 2 meses
-
Excel: Cálculo de Finiquito, Beneficios Sociales Bolivia - Es importante tener nociones mínimas acerca el cálculo del finiquito y Beneficios Sociales de un trabajador en Bolivia, ya sea para la verificación de nues...Hace 2 meses
-
-
Minutos de juego y puntos. El Espanyol, sus finales de partido y mis enfados - Pienso que el Espanyol este 2024 se está dejando muchos puntos al final de los partidos. Cuando el ... Leer más » The post Minutos de juego y puntos. El ...Hace 7 meses
-
TikTok’s search evolution - 2 in 5 Americans use TikTok as a search engine. Nearly 1 in 10 Gen Zers are more likely to rely on TikTok than Google as a search engine. More than half of...Hace 7 meses
-
MASTERCLASS Gratis – Gráfica de Gestión Proyectos en #EXCEL. - Aprende a crear un Gráfico de CURVA S, ideal para GESTIÓN DE PROYECTOS, porque te permite identificar como esta tu proyecto tanto en COSTOS como en TIEMP...Hace 8 meses
-
Interés compuesto con Excel - Este es un mapa mental de las distintas funciones Excel para calcular el valor del dinero en el tiempo aplicando la ley de capitalización compuesta. En ...Hace 9 meses
-
Demos cursos de Excel 2007, 2010, 2013, 2016, 365 - Puedes consultar las demostraciones de los siguientes capítulos de los cursos Excel. Demo cursos ExcelHace 9 meses
-
Unblocking and Enabling Macros - When Windows detects that a file has come from a computer other than the one you're using, it marks the file as coming from the web, and blocks the file....Hace 1 año
-
-
Navigating Outlook Favorites - I have these four favorites defined in Outlook: From the inbox, I could hit Shift+F6 to get into the Favorites area but sometimes I would end up in no man’...Hace 1 año
-
Office Scripts: Trabajando con Tablas - [image: Office Scripts: Trabajando con Tablas] Me he dado cuenta que últimamente solo escribo de lenguaje M (es mi pequeño vicio)... pero hay que liberar l...Hace 1 año
-
Progress on the Block Protocol - Since the 1990s, the web has been a publishing place for human-readable documents. Documents published on the web are in HTML. HTML has a little bit of… Re...Hace 1 año
-
Hello world! - [image: Hello world!] Welcome to WordPress. This is your first post. Edit or delete it, then start writing!Hace 2 años
-
Decálogo para realizar Trabajos de Fin de Grado (TFGs) y de Fin de Máster (TFMs) - 1.- Tanto TFGs como TFMs son un requisito para graduarse a la vez que una oportunidad para aprender. Así, el tiempo que se le dedica es muy variable. De...Hace 3 años
-
London Excel Meetup Workbooks - The workbooks used in my presentation on “Analytical and Interactive Dashboards in Excel” at the London Excel Meetup, September 3, 2020Hace 4 años
-
Cálculo de jornada que termina al día siguiente (Power Query) y despedida - [image: Cálculo de jornada que termina al día siguiente (Power Query) y despedida] Este blog se ha ocupado de cálculos de tiempo con bastante intensidad, c...Hace 4 años
-
Visualize parts and whole - combine clustered column and stacked column charts - *Inga: Disa what?* *Igor: -ppeared.* by The FrankensTeam ------------------------------ Really it was 3 years ago we posted our last article? *Freddy: Th...Hace 5 años
-
-
-
-
-
-
-
-
-
6 Response to "Calendario Laboral Dinámico en Excel"
Con este calendario he pretendido enseñar unas cuantas características esenciales de Excel:
1) A usar tablas dinámicas con agrupaciones de fechas y con formatos condicionales, para conseguir un calendario dinámico.
2) A usar segmentaciones de datos de los campos de las tablas dinámicas, para seleccionar un valor y poder filtrar la tabla dinámica.
3) A usar tablas dinámicas para crear CdM - Cuadros de Mando, o en este caso un calendario laboral, gracias a la función IMPORTARDATOSDINAMICOS, con la que se obtienen los valores resumidos de las tablas dinámicas.
4) A usar formatos condicionales con fórmulas.
5) A usar fórmulas matriciales para encontrar la dirección de una celda que coincida con un valor dentro de un rango de celdas. Esta dirección es auxiliar para conseguir el hipervínculo que selecciona el día de hoy.
6) A usar fórmulas matriciales para obtener varias filas con un mismo valor, consiguiendo saber cuáles son los 4 días festivos de cada mes.
¿Conocías estas técnicas con Excel?
¿Las has aprendido leyendo mi artículo?
¿O sólo quieres usar el calendario sin aprender nada más?
Excelente aporte Pedro Gonzalvo Escribano, muy útil y bien diseñado.
Gracias por compartir...
Todos están invitados a Mi Grupo de Excel!
https://www.facebook.com/groups/Excel.Aplicaciones.Para.Todos
Saludos...
Muchas gracias Ruben por tu amable comentario.
Con tu beneplácito seguiré publicando sobre Excel en este gran grupo:
https://www.facebook.com/groups/Excel.Aplicaciones.Para.Todos
Muy bueno tu contenido. Tus aportes me son muy útiles para mi trabajo del día a día. Agradezco tus aportes y sobre todo, que nos permitas revisar el contenido de las fórmulas para aprender algo nuevo siempre. Bendiciones.
Me encanta que aprecies mi contenido y que sea útil en tu trabajo. Todo lo que publico intento que sea educativo, para lo que en todos los archivos se pueden analizar las fórmulas y las macros.
Gracias por seguirme.
Prueba este Calendario Laboral con Festivos Dinámicos, mucho más avanzado: https://pedrowave.blogspot.com/2020/12/calendario-laboral-con-festivos.html
Leave A Reply
Indícame las erratas que encuentres y qué es lo que te gustaría ver en los próximos artículos.