Traducir el blog
Calendario Perpetuo desde 1900 con eventos
0) Introducción al Calendario Perpetuo
Esta no es la tercera parte de la trilogía que estoy escribiendo sobre fechas anteriores al año 1900, sino que es un inciso para presentar un nuevo Calendario Perpetuo con fechas desde el año 1900, y que tiene como valor añadido la posibilidad de mostrar los eventos o efemérides de cada día pasando el ratón sobre las celdas. Accede al siguiente enlace en inglés para saber cómo:
How to Create a Rollover Effect in Excel: Execute a Macro When Your Mouse is over a Cell
La tercera entrega de la trilogía se basará en este calendario pero usando fechas en VBA, por lo que abarcará fechas desde el 1 de enero del año 100, con lo que servirá para todo el Calendario Gregoriano.
Este es el aspecto del nuevo calendario perpetuo:
1) Características relevantes
Características relevantes del Calendario Perpetuo en Excel:
- Calendario Perpetuo Gregoriano con un rango de fechas del 01-03-1900 al 31-12-9999.
- Vista de 3 meses: el mes seleccionado; el anterior y el posterior.
- El primer día de la semana puede ser domingo o lunes.
- Muestra u oculta los días de otros meses.
- Sábados y domingos marcados en color rojo.
- Flechas para incrementar o decrementar el mes, rotando como un carrusel.
- Flechas para cambiar el año.
- Selección de un mes.
- Selección de una año mediante 2 cifras para las centenas y 2 cifras para las unidades.
- Si se decrementa el año 1900 pasa al año 9999.
- Si se incrementa el año 9999 pasa al año 1900.
- Selección del día de hoy.
- Selección del primer día del calendario perpetuo: 01-03-1900.
- Selección del último día del calendario perpetuo: 31-12-9999.
- Muestra u oculta un calendario auxiliar y otros datos.
- Tabla de fechas con las efemérides guardadas, por ejemplo los Días de Independencia de los países obtenidos de Wikipedia (enlace aquí).
- Hasta 12 efemérides por día en 3 páginas con 4 eventos cada una.
- BONUS: Al pasar el cursor del ratón sobre una celda muestra los eventos de ese día.
- Activa o desactiva el evento del ratón sobre una celda.
- Botones de animación con avance y retroceso de los meses y con 5 velocidades de animación.
- Botones para ver los primeros o los últimos 3 meses del año.
- Botones para incrementar o decrementar de 3 en 3 meses.
- Filtro de un día en la tabla de fechas.
No voy a explicar cómo usar este calendario, lo interesante es probar cada una de las características y experimentar con el diseño de la experiencia del usuario (UXD - User eXperience Design) de este calendario perpetuo.
Si tienes sugerencias para mejorar este calendario, puedes compartirlas escribiendo un comentario al final de este artículo.
2) Plantilla del Calendario Perpetuo desde 1900
Descarga la plantilla totalmente gratuita, con las macros visibles y las hojas protegidas sin contraseña, desde Google (con el botón "Excel Download") o desde el enlace a Microsoft OneDrive:
3) Cómo he diseñado este Calendario Perpetuo
Este calendario perpetuo se compone de 3 hojas:
- Año>=1900 - Donde se muestra y se controla el calendario.
- Fechas - Donde se guarda la tabla de fechas.
- Idiomas - Donde se guardan las traducciones de los idiomas.
En la hoja 'Idiomas' se selecciona en la celda A1 entre 2 idiomas: Español o English. Los textos de la columna A son las traducciones que aparecen en el calendario. Si quieres, puedes añadir más columnas con más idiomas. Una macro cambia los textos de la cabecera de la tabla de la hoja 'Fechas'.
La hoja 'Fechas' contiene la tabla de fechas en 3 columnas: Fecha; Evento y Núm. Serie VBA. Esta última columna es calculada con una macro y sirve para ordenar las fechas por su número de serie en VBA, o sea, con números positivos y negativos. He incluido algunas fechas significativas del calendario gregoriano desde 1900 y las efemérides de los Días de Independencia de varios países, obtenidos de la Wikipedia - enlace aquí. Desprotegiendo la hoja sin contraseña se puede editar cualquier fecha.
El calendario perpetuo está en la hoja 'Año>=1900'. Para explicar cómo ha sido diseñado nos centraremos en el mes central del calendario, en el rango K5:Q12
En la celda L5 se muestra el nombre del mes pero contiene el día 1 del mes y año seleccionados con alguno de los controles del calendario: con el desplegable de la propia celda; con el cambio de año; con las flechas de incremento o decremento de los meses; con las teclas de animación de la fila 14.
En el rango X34:Z46 está la tabla auxiliar con la lista de meses que se carga con la validación de datos de la celda L5.
El cálculo de un mes del calendario comienza en el calendario auxiliar que se encuentra entre las filas 23 y 30 (se puede ver haciendo clic en la fila 21).
En las celdas B25, K25 y T25 se calcula el primer día de la semana en que comienza un mes, con las fórmulas:
B25: =C5+1-DIASEM(C5;Rango_DíaSemana)
K25: =Rango_MesNom+1-DIASEM(Rango_MesNom;Rango_DíaSemana)
T25: =U5+1-DIASEM(U5;Rango_DíaSemana)
Siendo:
Rango_MesNom: ='Año>=1900'!$L$5
Rango_DíaSemana: ='Año>=1900'!$Z$2 (La semana comienza en: 1-dom; 2-lun)
Esas celdas contienen el número de serie de una fecha, por lo que el resto de los días se calculan a partir de esas celdas sumando un uno al día anterior. Se calculan 6 semanas para cubrir todo el mes. El formato de las celdas de esas fechas es una letra "d", por lo que se muestra el número del día. En los meses de las filas 23 a 30 se ven siempre los días de meses anteriores. Los días con eventos o efemérides en la hoja 'Fechas' se marcan en color naranja gracias al formato condicional. Los sábados y domingos se pintan en color rojo.
¡¡¡ Y ahora el truco fundamental !!!
¿Qué fórmula produce el efecto de pasar el ratón por encima de la celda ejecutando una macro?
Vamos a analizar una fórmula posible para la celda K8:
=HIPERVINCULO(MouseOver(K26);DIA(K26))
Hace referencia a la celda K26 del calendario auxiliar, que contiene una fecha cualquiera y llama a la función HIPERVINCULO que tiene 2 argumentos.
El segundo argumento es un nombre descriptivo que, en este caso, llama a la función DIA para mostrar el número del día en la celda.
El primer argumento es la ubicación del hipervínculo, ejecutando la macro MouseOver(K26), con la celda de la fecha auxiliar como argumento.
Esa era la fórmula original que sirve únicamente para días dentro del mes del calendario. La fórmula definitiva en la celda K8 es un poco más compleja:
=HIPERVINCULO(MouseOver(K26);SI.ERROR(SI(O($Z$3="ü";MES(K26)=$K$5);DIA(K26);"");""))
Esta fórmula sirve para todos los días del mes y tiene en cuenta si se muestran los días de otros meses (controlado por la celda Z3) y si hay errores en las fechas, cosa que sólo ocurre en enero de 1900 y en diciembre de 9999.
La macro MouseOver está en el módulo ModPasarRatónSobreCeldas
La función MouseOver devuelve una String con la ubicación de la propia celda en que se llamó, pero antes modifica la celda B16 ("Rango_Día") con la fecha del día sobre el que ha pasado el ratón por encima. Este efecto lo publicó por primera vez Jordan Goldmeier en su blog OPTION EXPLICIT VBA por lo que le estoy muy agradecido, pues ha contribuido a enriquecer la interactividad y usabilidad de Excel. En el siguiente enlace hay un ejemplo mío de lo que se puede llegar a hacer con este excelente efecto de pasar el ratón sobre las celdas de Excel sin tener que hacer clic en ellas:
pedrowave.blogspot.com - Como pintar con Excel
Las fórmulas que llaman a la función HIPERVINCULO consiguen cambiar el día en la celda B16, denominada "Rango_Día", con la macro MouseOver:
Range("Rango_Día").Value2 = rCelda.Value2
¡MENUDO TRUCO!
En las filas 17 a 19 se muestran los eventos o las efemérides del día de 4 en 4 y hasta en 3 páginas, obtenidas de la tabla auxiliar en el rango B34:V46
La columna "Fila" contiene una fórmula matricial (introducida con las teclas: Control + Mayúsculas + Intro) para obtener 12 filas con los eventos del día extraidos de la tabla de la hoja 'Fechas':
{=SI.ERROR(K.ESIMO.MENOR(SI($B$16=Rango_Fechas;FILA(Rango_Eventos)-MIN(FILA(Rango_Fechas))+1;"");FILA()-FILA(B34));0)}
Haciendo clic en el día de la celda B16, si hay eventos en ese día, los filtra en la hoja 'Fechas'.
4) Próximos pasos
En una próxima entrega publicaré un calendario perpetuo similar pero usando las fechas de VBA en lugar de las de Excel, con lo que se podrán programar eventos desde el día 1 de enero del año 100.
Si te gustan los calendarios puedes leer todos los calendarios que he publicado hasta la fecha en este enlace:
Mi lista de blogs
-
Análisis de Datos por Fechas y Horas en Excel - Cuando se trata de analizar datos, es común encontrarse con solicitudes que van más allá de simplemente agrupar por fecha. […] The post Análisis de Datos...Hace 1 día
-
Why Power Query Is the Excel Feature Engineers Can’t Ignore - If you find yourself buried under heaps of data with Excel as your go-to tool, then buckle up because we’re heading into the world of […]Hace 2 días
-
PLEASE UPDATE THE RSS FEED - The RSS feed URL you're currently using https://follow.it/excelunusual will stop working shortly. Please add /rss at the and of the URL, so that the URL ...Hace 2 días
-
PLEASE UPDATE THE RSS FEED - The RSS feed URL you're currently using https://follow.it/excel-foro-ejercicios-ejemplos-soluciones-dudas will stop working shortly. Please add /rss at t...Hace 2 días
-
PLEASE UPDATE THE RSS FEED - [image: PLEASE UPDATE THE RSS FEED] The RSS feed URL you're currently using https://follow.it/jldexcelsp will stop working shortly. Please add /rss at the...Hace 2 días
-
Excel Dependent Drop Down Lists – Block Changes - One of my favourite Excel features is a data validation drop down list. In just a couple of minutes, you can make a list of items, then make that list appe...Hace 2 días
-
Hipotenusas de cuaternas pitagóricas - Una cuaterna pitagórica es la expresión algebraica del teorema de Pitágoras en tres dimensiones, es decir, un conjunto de cuatro números enteros positivo...Hace 4 días
-
Excel Power Query: Obtener y transformar - Iconos más importantes de Obtener y transformar de Excel 2016: Obtener y transformar (Power Query) de Yolanda Cuesta Altieri Excel Power Query: Obtener y...Hace 4 días
-
CONTROLAR LOS TIEMPOS EN NUESTRAS APLICACIONES DE POWER APPS CON EL TEMPORIZADOR - Hola a todos! Cuanto realizamos programaciones es normal el uso de funciones para pausar la ejecución del código un determinado tiempo o para programarlo...Hace 6 días
-
Let, Lambda, and py_Eval - I have covered the new Excel Let and Lambda functions before at: Two New Functions; Let and Lambda Eval and Let examples Lambda and VBA The Lambda function...Hace 6 días
-
Conversor PGN de ajedrez mejorado - 🔝*Select the language of this blog post in the Google box at the top left. * Esta es la *4ª versión del Conversor PGN de ajedrez* que hago, cada uno ...Hace 1 semana
-
10 Ways to Count the Number of Occurrences in Microsoft Excel - Wondering how to count the number of occurrences in Excel? You’ve reached the right resource! Keep reading. Suppose, you’ve got a tabular dataset in your w...Hace 2 semanas
-
Announcing Power BI Dashboard Contest (win $500 prizes!) - Hey there, I have a SUPER exciting announcement! April is about to get a whole lot sweeter with our Power BI Dashboard Contest! Your mission, should you ...Hace 2 semanas
-
What's New in Excel (March 2024) - Welcome to our March 2024 update. This month, export to CSV and show details in PivotTables are now available in Excel for the web. Also, creating Power...Hace 3 semanas
-
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 3 semanas
-
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 5 semanas
-
Aprende cómo usar la función #Filtrar con rangos de fechas SIN macros 📋 [VIDEO] - ¿Alguna vez te has preguntado cómo puedes filtrar tus datos por fechas específicas en Excel de manera rápida y eficiente? En este video, voy a enseñarte pa...Hace 1 mes
-
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 2 meses
-
Interés compuesto con Excel - En la imagen, se presenta un esquema de las distintas funciones Excel para calcular el valor del dinero en el tiempo mediante la capitalización compuesta...Hace 2 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 3 meses
-
El sistema operativo no está configurado para ejecutar esta aplicacion. - Si esta semana habéis recibido el mensaje "El sistema operativo no está configurado para ejecutar esta aplicacion" cuanto intentásteis abrir alguna aplic...Hace 7 meses
-
Atajos esenciales de Excel que todo profesional debe conocer - Manejar Excel con destreza puede ser el superpoder que no sabías que necesitabas. Agiliza tus tareas diarias y sorprende a tus colegas con estos atajos c...Hace 8 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
-
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
-
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 2 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 3 años
-
Dimensiones-Propiedades de perfiles de acero (IMCA) - Saludos compañeros, en esta oportunidad compartimos esta Planilla Excel que contiene las Propiedades y dimensiones de diferentes tipos de perfiles de acero...Hace 4 años
-
-
-
-
-
-
9 Response to "Calendario Perpetuo desde 1900 con eventos"
Después de ver la programación, se que no es una tarea sencilla y mucho tiempo de dedicación... Felicidades por estos aportes...Valen Oro Puro!!!
Hay mucho que analizar y aprender de este archivo...!!!
Gracias.
Como has hecho el mismo comentario en Facebook, te vuelvo a dar las gracias por tu valioso comentario Leopoldo Blancas. La verdad es que le he dedicado unas cuantas horas a intentar pulir este calendario, que es uno más de los más de 20 que he publicado en 10 años.
Ahora falta que me lo testeen los usuarios y vean si es de utilidad, aunque solamente sea como ayuda al aprendizaje de Excel.
En el siguiente enlace puedes ver y descargar el nuevo Calendario Perpetuo con fechas desde antes de 1900, ya que está diseñado con fechas en VBA desde el 1 de enero del año 100.
Calendario Perpetuo desde antes de 1900
tengo una duda quiero añadir una columna al calendario, donde ponga la semana del año que es, es decir, 1 o 25, la que corresponda, pero no lo logro hacer, me esta dando fallo, pero no veo como arreglarlo, sabes como se puede hacer, es para poder utilizarla en una programación y las semanas pueden bailar de un año a otro
Para añadir el número de semana se usa la función: NUM.DE.SEMANA(núm_de_serie,[tipo_de_devolución])
Dependiendo de la localización geográfica se usará un valor distinto para el tipo de devolución...
gracias, es para españa, lo del numero de la semana, es para hacer una programacion de un colegio
hola he intentado hacer lo que tu me dices, utilizando la formula, pero cuando llego al mes de agosto, vuelve a reiniciarse, y empieza a contar desde 1, no se que puedo haber hecho mal, lo que no se es como enviarte mi fichero excel para que lo veas
Contestando a tu primera pregunta, el tipo de devolución a usar como argumento para España es el tipo 21, que es el único tipo que utiliza el Sistema 2 según ISO 8601, que generalmente se conoce como el sistema de numeración de semanas europeo.
Si tienes problemas para usar la función NUM.DE.SEMANA, este blog no es de ayuda. Te recomiendo registrarte en un foro de ayuda, como TodoExcel.com, y publicas un tema solicitando ayuda y adjuntas tu archivo explicando qué quieres conseguir, dónde quieres los números de semana, que has intentado hasta ahora, dónde te falla y el resultado que esperas.
Leave A Reply
Dime si te gusta lo que lees y, si no te gusta, dime por qué. Tengo habilitada la moderación de comentarios. Tu comentario se publicará pronto.