Access - Función siinm,para automatizar fecha

 
Vista:
sin imagen de perfil
Val: 2
Ha aumentado su posición en 11 puestos en Access (en relación al último mes)
Gráfica de Access

Función siinm,para automatizar fecha

Publicado por luisa (34 intervenciones) el 07/07/2014 21:34:43
Hola

En una bd de access, tengo un formulario con los campos llamados: “campo 1”y “campo 2”

En el “campo 1“ introduzco una fecha de esta forma (por ejemplo): 23/02/2014

Mi pregunta es :

Quisiera que de forma automática en el “campo 2” apareciese la fecha anterior, seis meses después, eliminando julio y agosto.

Es decir, si parto del ejemplo anterior, quedaría así:

- . Campo 1: 23/02/2014

- . Campo 2: 23/10/2014


He estado investigando la función de Access llamada =siinm, pero soy incapaz de hacerlo, por lo que agradecería enormemente la ayuda

Un saludo!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Función siinm,para automatizar fecha

Publicado por 2PL (77 intervenciones) el 07/07/2014 23:31:59
Puedes hacer esto:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub Campo1_AfterUpdate()
   If Month(Campo1) = 1 Then
      Campo2 = Campo1 + 181
   ElseIf Month(Campo1) = 2 Then
      Campo2 = Campo1 + 242
   ElseIf Month(Campo1) = 3 Then
      Campo2 = Campo1 + 245
   ElseIf Month(Campo1) = 4 Then
      Campo2 = Campo1 + 244
   ElseIf Month(Campo1) = 5 Then
      Campo2 = Campo1 + 245
   ElseIf Month(Campo1) = 6 Then
      Campo2 = Campo1 + 246
   End If
End Sub
Completalo tu con los restantes meses y sus dias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 2
Ha aumentado su posición en 11 puestos en Access (en relación al último mes)
Gráfica de Access

Función siinm,para automatizar fecha

Publicado por luisa (34 intervenciones) el 08/07/2014 10:43:53
2PL, un millón de gracias!

Entiendo que esto es código de visual basic.
De esta forma, ahora, ¿ lo que tendría que hacer es los siguiente?
ir al control/propiedades/eventos/después ed actualizar: pegar lo que me has mandado

No quiero ser pesada, pero ando algo perdida

Gracias!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Función siinm,para automatizar fecha

Publicado por 2pl (77 intervenciones) el 09/07/2014 10:33:29
OK, pero tienes que completar los meses que te faltan, por ejemplo para septiembre serian los dias de estos meses
sep 30
oct 31
nov 30
dic 31
ene 31
feb 28 (siempre que no sea bisiesto)
total 181
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 2
Ha aumentado su posición en 11 puestos en Access (en relación al último mes)
Gráfica de Access

Función siinm,para automatizar fecha

Publicado por luisa (34 intervenciones) el 09/07/2014 14:44:34
Gracias, 2pl !!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 2
Ha aumentado su posición en 11 puestos en Access (en relación al último mes)
Gráfica de Access

Función siinm,para automatizar fecha

Publicado por luisa (34 intervenciones) el 09/07/2014 16:23:47
Hola
Perdona tanta molestia.
He hecho lo de los meses. Quedaría como se ve al final del post.

Luego, haga lo que haga no consigo nada
He probado a pegarlo en el origen del control del formulario del campo1,del campo2... he probado ha meterlo en eventos de ambos controles, para después de actualizar... he probado con el generador de código... pero no consigo nada.
¿Podría decirme qué debo hacer con este código?
Mil gracias

Private Sub Campo1_AfterUpdate()
If Month(Campo1) = 1 Then Campo2 = Campo1 + 181
ElseIf Month(Campo1) = 2 Then Campo2 = Campo1 + 242
ElseIf Month(Campo1) = 3 Then Campo2 = Campo1 + 245
ElseIf Month(Campo1) = 4 Then Campo2 = Campo1 + 244
ElseIf Month(Campo1) = 5 Then Campo2 = Campo1 + 245
ElseIf Month(Campo1) = 6 Then Campo2 = Campo1 + 246
ElseIf Month(Campo1) = 7 Then Campo2 = Campo1 + 246
ElseIf Month(Campo1) = 8 Then Campo2 = Campo1 + 246
ElseIf Month(Campo1) = 9 Then Campo2 = Campo1 + 181
ElseIf Month(Campo1) = 10 Then Campo2 = Campo1 + 182
ElseIf Month(Campo1) = 11 Then Campo2 = Campo1 + 181
ElseIf Month(Campo1) = 12 Then Campo2 = Campo1 + 181

End If
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Función siinm,para automatizar fecha

Publicado por 2pl (77 intervenciones) el 09/07/2014 18:54:45
Dime tu correo y te mando un ejemplillo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar