Hola:
Hay muchas opciones para controlar el ingreso de fechas pero voy a optar por tu idea de ingresar solamente el día.
Entonces esto será para el textbox que recibirá esa información:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1 < 1 Or TextBox1 > 31 Then Cancel = True
End Sub
Esto hará que no puedas avanzar si el ingreso no corresponda a un día de mes.
Luego al momento de pasarlo o allí mismo armás la fecha:
miFecha = val(textbox1) & "/" & Month(date) & "/" & Year(date)
Range("B2") = CDate(miFecha) 'ejemplo que mueve la fecha a la celda B2
Saludos
Elsa
http://es.geocities.com/lacibelesdepunilla/macros