Para que las celdas puedan bloquearse, la hoja deberá estar protegida. Sigue las instrucciones.
Realiza los siguientes pasos para desbloquear todas las celdas.
1. Selecciona todas todas las celdas o las celdas que quieras bloquear de tu hoja.
2. Selecciona el menú inicio
3. Selecciona "Formato" de la ficha "Celdas"
4. Selecciona "Formato de Celdas"
5. Selecciona la ceja "Proteger"
6. Desmarca la casilla "Bloqueada"
Ahora todas las celdas están desbloqueadas, la macro de tu botón es esta:
Sub ponerfecha()
'Por.DAM
celda = "D4"
hoja = "Hoja2"
pass = "abc"
If Range(celda) = "" Then
Sheets(hoja).Unprotect pass
Range(celda) = Date
Range(celda).Locked = True
Sheets(hoja).Protect pas
End If
End Sub
Cambia "D4" por la celda que quieras, cambia "Hoja2" por el nombre de tu hoja y cambia "abc" por el password que quieras para proteger la hoja. Ejecuta la macro, listo la celda tendrá la fecha y no podrá modificarse.