Para pasar la macro a otros libros.
Sigue las Instrucciones para poner la macro en worksheet
1. Abre tu hoja de excel
2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
4. Del lado derecho copia la macro
Private Sub Worksheet_Change(ByVal Target As Range)
'Por.DAM
If Not Intersect(Target, Range("C2")) Is Nothing Then
Select Case UCase(Target)
Case "ENERO": mes = 1: Case "FEBRERO": mes = 2
Case "MARZO": mes = 3: Case "ABRIL": mes = 4
Case "MAYO": mes = 5: Case "JUNIO": mes = 6
Case "JULIO": mes = 7: Case "AGOSTO": mes = 8
Case "SEPTIEMBRE": mes = 9: Case "OCTUBRE": mes = 10
Case "NOVIEMBRE": mes = 11: Case "DICIEMBRE": mes = 12
End Select
Application.EnableEvents = False
Range("A1:A31").ClearContents
For i = 1 To Day(DateSerial(Year(Date), mes + 1, 1) - 1)
Cells(i, "A") = Format(DateSerial(Year(Date), mes, i), "dd""-""mm"" ""[$-80A]ddd;@")
Next
Application.EnableEvents = True
End If
End Sub
Cambia en esta línea la celda de la lista desplegable con los meses
If Not Intersect(Target, Range("C2")) Is Nothing Then
Cambia en esta línea las celdas destino de los días
Range("A1:A31"). ClearContents
Y también en esta línea pon la columna destino de los días
Cells(i, "A")
Saludos. DAM
Si es lo que necesitas.