AYUDA CON MACRO CALENDARIO

Hola, tenia una duda con macros de excel, quiero utilizar el calendario, ya
lo he insertado y funciona bien.
Básicamente tengo una hoja en excel donde ciertos días agrego una fila con
su fecha y demás datos, quiero mostrar dichos datos utilizando el calendario que
ya trae excel, pero ahi aparecen todos los días del mes y yo solo tengo datos
en algunos de esos días entonces se me ocurrió bloquear los días que no tienen
datos y que unicamente podas hacer click en los que si tienen datos, no he
encontrado como hacerlo pero luego vi que existe un método que se llama
getdaybold donde lo que si podes hacer es hacer en negrita ciertos días del mes,
es utilizado por ejemplo para señalar días festivos pero no he encontrado como
usarlo, por lo que agradecería tu ayuda.
gracias

1 respuesta

1
Respuesta de

Hola, debes usar el control Monthview, no utilices el control Calendar.

Aquí un ejemplo para poner todos los domingos en negrita, los días puestos en negrita solo se muestran para el mes que es activo, si pones en negrita de otros meses no te aparecerán, en este ejemplo ya esta resuelto ese problema con el evento getdaybold.

Formatting Specific Days
Any day number on the MonthView control can also have its font set to bold. This capability can be used to draw attention to dates (i.e. holidays, vacations, etc.) or just distinguish them from ordinary dates. More than one date can be bolded at the same time. Although the bold information for a day is not preserved while scrolling from month to month, this behavior can be simulated using the GetDayBold event.
The following example makes all Sundays bold, even when new months are scrolled into view:
Private Sub MonthView1_GetDayBold(ByVal StartDate As Date, ByVal Count As Integer, State() As Boolean)
Dim i As Integer
i = vbSunday
While i < Count
State(i - MonthView1.StartOfWeek) = True
i = i + 7
Wend
End Sub
Añade un comentario a esta respuesta
Añade tu respuesta
Haz clic para o
Escribe tu mensaje