Comparar fechas en VBA o Visual Basic para aplicaciones, es esencialmente la misma operación que la comparación de números enteros. Para hacer más fácil la comparación de fechas y simplificar el trabajo con fechas , en general , utilizar nombres de variables que indican un tipo "Date" . Por ejemplo , escriba " DAT1 , " o " Birthday1 . " Para entender cómo la comparación de fechas , escribir programas cortos que se realizan comparaciones de fecha , y utilizar el modo de ejecución paso a paso del entorno de programación VBA , junto con la ventana "Quick reloj " del medio ambiente, para observar las comparaciones en el tiempo real. Determinar Otro Venta
No es necesario para convertir las fechas para el tipo "Date" para las comparaciones si ya están en ese tipo. Usted puede saber si una variable es un tipo de fecha en un par de maneras. Mire la sección de declaraciones al inicio de un procedimiento de VBA. En esta sección es donde usted declara todas las variables con la palabra clave " Dim " . Sus variables de fecha se pueden declarar con declaraciones como ésta : " d1 As Date. " Otra forma de saber si la variable es de tipo " Date" es mirando a las asignaciones a una variable. Esas tareas se utiliza el carácter "# ", que indica el tipo "Date" . Por ejemplo , la siguiente sentencia asigna la fecha " 01/12/2001 " a la variable " fecha" " D1 ".
D1 = # 12/01/2001 #
Convertir a la Fecha Otro Venta
para comparar fechas en VBA , primero necesitamos tener dos fechas que se almacenan en el tipo "Date" , que es uno de los varios tipos de valor en VBA. El tipo " Fecha " es un caso especial del tipo de datos entero , por lo que la comparación de fechas es esencialmente la misma que la comparación de números enteros . Si las fechas no están aún en el tipo "Date" , tendrá que convertirlos a ese tipo. ¿Es que, al aplicar la función CDate . Por ejemplo, ejecute la siguiente instrucción para convertir la cadena " 01/12/2001 " a un tipo de fecha :
D1 = CDate ( " 12/01/2001 " )
Unidos La comparación
Si desea probar si la fecha en una variable " fecha" se produce antes de que otro , utilice el símbolo menor que , como muestra el siguiente ejemplo .
< p > Si ( d1 < d2 )
Utilice el símbolo mayor que para probar si una fecha se produce después de otra fecha, y utilizar el símbolo igual para ver si los valores de dos variables se refieren a la misma fecha.
Sample Program
Escriba un programa de ejemplo que convierte y compara las fechas para que pueda consultar el programa de la hora de escribir programas VBA más complejas que realizan comparaciones de fecha . Abra el entorno de programación en una de las aplicaciones de Office , haga clic en el botón "Visual Basic " de la pestaña " desarrolladores" , a continuación, pegue el siguiente programa en la ventana central del medio ambiente. Este programa utiliza la función " CDate " para convertir cadenas a las fechas, y realiza tres comparaciones diferentes en dos fechas. Ejecute el programa con la tecla " F5 ", y ver el resultado, mirando en la ventana de " inmediato " .
CompareDates Public Sub ()
Dim d1 , d2 como fecha
d1 = CDate ( " 01/12/2001 " )
d2 = CDate ( " 01/12/2002 " )
Si ( d1 < d2 ) Entonces Debug.Print "Fecha 1 se produce antes de la fecha 2 . "
Si ( d1 > d2 ) Entonces Debug.Print " Fecha 1 se produce antes de la fecha 2 . "
Si ( d1 = d2 ) Luego de depuración. Imprimir "Fecha 1 es la misma que la fecha 2 . "
End Sub