martes, 31 de agosto de 2010

VBA: función ISDATE.

Llegó a mi correo una pregunta sobre cómo comprobar con una macro si una celda era una Fecha o no. Preguntaba en concreto:

...Quiero grabar una macro en VBA para excel pero debo comprobar que el valor de las celdas de un rango determinado NO es una fecha...


Como no tengo más datos reproduciré un ejemplo muy sencillo en código VBA para comprobar si una celda tiene o no formato de Fecha.
Supongamos que nuestra celda A1 tiene algún valor introducido, si es una fecha quiero que me lo confirme, escribiendo en la celda B1 'si es fecha', por contra, si la celda A1 no tuviera editado un valor con formato fecha que escriba en la celda B1 'no es fecha':

'macro que detecta si una celda tiene formato de fecha o no.
Sub check_fecha()
If IsDate(Range("A1")) = True Then
Range("B1").Value = "si es fecha"
Else: Range("B1").Value = "no es fecha"
End If
End Sub

1 comentario: