Programando usando VB, el requisito es: ingresar una fecha 2012-9-9 en un cuadro de texto, presionar OK y mostrar el día siguiente 2012-9-10 en otro cuadro de texto.
El IsDate(Text1.Text) con el que comenzó ya ha determinado que se han excluido todos los números de fecha ilegales (incluidos aquellos con meses y días incorrectos).
De hecho, en la programación real, excepto que el límite de año es significativo, no es necesario probar el número de mes y día por separado, solo si son legales o no. Entonces su programa puede hacer esto. Lo máximo que puedes hacer es agregar una pista:
Private Sub Command1_Click()
Si esFecha(Text1.Text) Entonces
Si Año(CDate(Text1 .Text) ) gt;= 1912 Y Año(CDate(Text1.Text)) lt;= 2050 Entonces
Text2.Text = DateAdd("d", 1, Text1.Text)
Else
Text2.Text = "Año fuera de rango"
Fin si
Else
Text2.Text = " Formato de fecha incorrecto"
End If
End Sub