Crea la siguiente macro en los eventos de la hoja
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Por.Dante Amor
If Not Intersect(Target, Range("D:D")) Is Nothing Then
If Target.Row > 1 Then
If Target.Count = 1 Then
UserForm1.Show
End If
End If
End If
End Sub
Sigue las Instrucciones para poner la macro en worksheet
- Abre tu libro de excel
- Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
- Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
- Del lado derecho copia la macro
Ahora crea un formulario e inserta un control con fecha, por ejemplo MonthView1.
Instrucciones para UserForm
- Abre tu hoja de excel
- Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
- En el menú elige Insertar / UserForm
4. En el panel del UserForm inserta un control con fecha
Escribe el siguiente código en el código del formulario
Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
'Por.Dante Amor
ActiveCell.Value = MonthView1.Value
Unload Me
End Sub
Funciona de la siguiente manera, cuando seleccionas una celda de la columna D, se abre el formulario, cuando le das click a una fecha en el formulario, esa fecha la pone en la celda.
También te anexo mi archivo para que veas el funcionamiento
https://www.dropbox.com/s/iv8ltd5zndtukcv/fecha%20con%20formulario.xlsm?dl=0
Saludos. Dante Amor
Recuerda valorar la respuesta.