Traducir el blog

Mini Calendario Bianual con Festivos

Posted on febrero 07, 2011 by Excel Pedro Wave

Ahora propongo un Mini Calendario Bianual con días festivos automáticos en Excel que he publicado en AyudaExcel.com - CALENDARIO (De 1900 a 9999) en dos versiones:
  • MiniCalendarioFestivosPW1.xls en Excel 2003 con 22 reglas de formato condicional.
  • MiniCalendarioFestivosPW1.xlsx en Excel 2007 y 2010 con 6 reglas de formato condicional.
Los que tenéis instalado Excel 2003 podéis mejorar esa versión, ya que con sus limitaciones en el formato condicional es más complicado conseguir marcar los sábados y el día de hoy y no lo he intentado lo suficiente, cosa que es muy fácil en versiones posteriores de Excel.


Características de este minicalendario:
  • Es bianual desde 1900 a 9999 como indica el tema.
  • Es bilingue en español e inglés.
  • En español la primera letra de los meses en mayúsculas.
  • Los nombres de los meses y los días en múltiples idiomas cambiando la Configuración Regional de Windows.
  • Comienzo de la semana en lunes (español) o en domingo (inglés).
  • Listado de festivos programables o festivos automáticos para dos años.
  • Cálculo automático de la Semana Santa hasta el año 2202.

En A1 se comprueba si el signo decimal es una coma (,) o un punto (.)

A2 es igual a A1 y si se escribe:
- una coma, las semanas empiezan en lunes.
- un punto, las semanas empiezan en domingo.

En A2 se genera un año aleatorio al inicio:

Aunque se puede cambiar por el año actual:

B2 es igual a A2 y es dónde se escribe el año.

En B18 se genera el año siguiente o 1900 si es 9999:

B19 es igual a B18 y se puede escribir otro año cualquiera.

En AP40 se cálcula el Domingo de Pascua de la Semana Santa para años menores que 2203 con:

En AP58 lo mismo con esta fórmula más corta y muy premiada:

NOTA: En Excel 2010 la función EXTRAE se llama MED y la función RESIDUO se llama RESTO.

Todas las celdas en el rango de días C3:AM14 tienen el formato de celdas personalizado d;; para ocultar los días inferiores al 1-01-1900, excepto en la última semana de diciembre en el rango AE14:AM14 con formato [<2958466]d;; para ocultar los días superiores al 31-12-9999.

Lo más interesante es que este minicalendario se basa en una única fórmula en C3 para saber cuál es el primer día del mes que es lunes (español) o domingo (inglés):

D3=A3+1 y se arrastra hacia la derecha hasta AM3.
Ya sólo basta arrastrar hacia abajo el rango C3:AM3 para construir el minicalendario de un año.

Para poder verlo los que no tengan instalado Excel 2007 o 2010 lo he publicado en mi disco virtual SkyDrive de ExcelWebApp que no permite validaciones de datos ni alineación vertical de los textos en las celdas pero se puede cambiar el año del calendario en la celda B2 e introducir festivos en la columna AP:



Descarga la versión Excel 2007-2010 aquí:

Mini Calendar Holidays PW1.xlsx


Descarga la versión Excel 2003 aquí:

MiniCalendarioFestivosPW1.xls


Os doy las gracias anticipadas por compartir vuestros comentarios sobre estos calendarios conmigo.

English translation of this post here.

5 Response to "Mini Calendario Bianual con Festivos"

.
gravatar
Anónimo Says....

Muy interesante al menos me sirvio para saber que excel no solo sirve para aprender fórmulas vanas sino para utilizarlo en lo que más te sirve como este caso algo muy cotidiano gracias amigo eres lo máximo

.
gravatar
Anónimo Says....

Saludos.

Navegando encontré su página y quisiera pedir su ayuda para saber como hace que su hoja insertada del calendario se pueda editar en el blog, ya que yo intento hacer algo parecido en el mio (blog) y solo he logrado insertar la hoja pero no puedo editar

mi mail pecon_59@yahoo.com.mx

agredeciendo de antemano su contestación

luis

.
gravatar
Anónimo Says....

Hola a todos;
alguien me puede ayudar en crear un calendario en fila.
necesito el código de la macro para filas.


Sub ocultar_los_dias()
Dim núm_col as integer
For núm_col = 30 to 32
If month(cells(5, núm_col)) <> cells (3, 4) then
Columns(Núm_col).hidden = true
Else
Columns(núm_col).hidden = false
End if
Next
End sub

.
gravatar
hugo sargento Says....

buenas días pedro wave,

me podrías ayudar con la formula de descansos rotativos en un cuadrante anual.
ejemplo: Carlos descansa lunes y martes durante 4 semanas seguidas y a la quinta cambia a martes y miércoles.

.
gravatar
hugo sargento Says....

BUENAS TARDES,
ME PODRIAS AYUDAR A CONSEGUIR UNA FORMULA PARA LOS DESCANSOS ROTATIVON EN UN TURNO DE TRABAJO ANUAL.

EJEMPLO: CARLOS EN ENERO DESCANSA LUNES Y MARTES DURANTE 4 SEMANAS Y/O 28 DIAS,DESPUES CAMBIA A MARTES Y MIERCOLES. Y ASI HASTA FINAL DEL AÑO.
GRACIAS POR TU AYUDA

HUGO

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