Conseguir una fecha con el día constante y el mes+1

Hola. Tengo un campo de fecha llamado "Recibi" del tipo dd/mm/yyyy. Necesito que a partir de esa fecha me devuelva otra en el campo "Plazo" donde el día es siempre fijo, y al mes le sume un mes más, ejemplo: si "Recibi" es 05/06/2011, el "Plazo" sería 20/07/2011. La cuestión es devolver la cifra 20 en el día y sumar un mes. He conseguido bien que aparezca 20 o bien que sume el mes con DateAdd("m";1;[Recibi]), pero no las dos cosas juntas. ¿Habría alguna solución del tipo que sea? Muchas gracias de antemano.

1 respuesta

Respuesta
1
Yo utilizaría un DateSerial con un poco de ingenio...
Se supone que:
a. lo ejecutas en un formulario
b. siempre sera el 20 del mes siguiente
En el afterUpdate del control Recibí
Me!plazo = DateSerial(Iif(Month(Me!Recibi = 12, Year(Me!Recibi) + 1, Year(Me!recibi)), Iif(Month(Me!Recibi = 12, 1, Month(Me!recibi)), 20)
Efectivamente lo ejecuto en un formulario y el día siempre será 20. Los datos van a una tabla que también tiene las columnas Recibí y Plazo.
He colocado la cadena que me indicas en el afterUpdate del campo Recibí, pero al introducir una fecha nueva en Recibí me aparece un cuadro de access que indica: "Access no puede encontrar la macro Me!plazo = DateSerial... la macro no existe o es nueva pero no se ha guardado. Cuando introduce la sintaxis nombre_grupo_macro.nombre_macro en un argumento, debe especificar el nombre con el que se guardo por última vez el grupo de macros de la macro"
Probé a ponerle un = delante, o sea:  =Me! plazo = DateSerial... por si acaso, pero nada. También he dejado las propiedades del campo Plazo sin nada. Al principio puse la instrucción que me das en Plazo, hasta que caí en que va en el campo Recibí, pero sigue sin funcionar.
En fin espero que puedas orientarme un poco más. Muchas gracias de nuevo.
He introducido la instrucción en el generador de código del afterUpdate, y ahora al introducir una fecha en Recibí se abre el Microsoft Visual Basic con una ventanita que indica: Error de compilación: Error de sintaxis"
Muchas gracias por la orientación. Al final opté por poner dos campos juntos: uno fijo con valor 20/ y otro con un AgregFecha("" ; 1; ...) en formato mm/aaaa. Es menos elegante, pero mucho más simple y me servia igual.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas