** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Operacion con registros anteriores y actuales
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoOperacion con registros anteriores y actuales

 Responder Responder
Autor
Mensaje
danigarva Ver desplegable
Nuevo
Nuevo


Unido: 30/Enero/2018
Localización: Madrid
Estado: Sin conexión
Puntos: 12
Enlace directo a este mensaje Tema: Operacion con registros anteriores y actuales
    Enviado: 15/Octubre/2019 a las 11:01
Hola, buenos días. Estoy atascado con una consulta de Access.

Tengo una tabla que me da el numero de sesión junto con la Carga de entrenamiento y quiero hacer esta operación que he conseguido con Excel para calcular un nuevo campo calculado que seria el EWMA crónico con la siguiente operación: 



Se puede conseguir esto mediante una consulta? o mediante otra forma?

Mucha gracias!
Arriba
guarracuco Ver desplegable
Moderador
Moderador


Unido: 24/Abril/2004
Localización: EEUU
Estado: Sin conexión
Puntos: 3239
Enlace directo a este mensaje Enviado: 15/Octubre/2019 a las 12:22
Hola, puedes hacerlo en una consulta, en la tabla (campo calculado), en un procedimiento de formulario.
Arriba
danigarva Ver desplegable
Nuevo
Nuevo


Unido: 30/Enero/2018
Localización: Madrid
Estado: Sin conexión
Puntos: 12
Enlace directo a este mensaje Enviado: 15/Octubre/2019 a las 13:48
Si me podéis poner algún ejemplo de que expresión poner en el campo calculado, lo agradecería

Editado por danigarva - 15/Octubre/2019 a las 13:49
Arriba
danigarva Ver desplegable
Nuevo
Nuevo


Unido: 30/Enero/2018
Localización: Madrid
Estado: Sin conexión
Puntos: 12
Enlace directo a este mensaje Enviado: 15/Octubre/2019 a las 13:49
Publicado originalmente por guarracuco guarracuco escribió:

Hola, puedes hacerlo en una consulta, en la tabla (campo calculado), en un procedimiento de formulario.

Como sería la expresión? no consigo dar con ella.
Arriba
danigarva Ver desplegable
Nuevo
Nuevo


Unido: 30/Enero/2018
Localización: Madrid
Estado: Sin conexión
Puntos: 12
Enlace directo a este mensaje Enviado: 15/Octubre/2019 a las 14:40
La fórmula para el primer registro lo tengo pero como creo una consulta con un campo calculado que me coja el dato del anterior registro? Esta sería la fórmula de excel: =B3*(2/(28+1))+((1-(2/(28+1)))*C2)



Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 14025
Enlace directo a este mensaje Enviado: 15/Octubre/2019 a las 15:43
Entiendo que lo quieres en Access ...

Como te dice Guarracuco tienes que usar una consulta ... y agrego yo con una función personal.

Miráte este ejemplo en mi página (y los adyacentes). Ojo, necesitas un buen nivel para 'meterle' mano al asunto Big smile.
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
emiliove Ver desplegable
Administrador
Administrador


Unido: 16/Junio/2009
Localización: Mexico
Estado: Sin conexión
Puntos: 5694
Enlace directo a este mensaje Enviado: 15/Octubre/2019 a las 15:50
O sin función, en Access cuentas con las funciones de dominio, Dlookup y DUltimo con ellas puedes acceder al ultimo registro.

Saludos.


Editado por emiliove - 15/Octubre/2019 a las 15:51
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 14025
Enlace directo a este mensaje Enviado: 15/Octubre/2019 a las 17:15
Correcto Emilio, pero el tiempo de ejecución puede ser una barbaridad de una forma u otra.

Mira la diferencia de tiempo en este ejemplo de numerar una consulta.

                     Ejemplo numerar consulta


Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
danigarva Ver desplegable
Nuevo
Nuevo


Unido: 30/Enero/2018
Localización: Madrid
Estado: Sin conexión
Puntos: 12
Enlace directo a este mensaje Enviado: 15/Octubre/2019 a las 17:26
Publicado originalmente por Mihura Mihura escribió:

Correcto Emilio, pero el tiempo de ejecución puede ser una barbaridad de una forma u otra.

Mira la diferencia de tiempo en este ejemplo de numerar una consulta.

                     Ejemplo numerar consulta



Hola Mihura, nunca he usado funciones personales de Access y tampoco he tocado mucho de Modulos :( por lo que mi nivel no es muy elevado, he conseguido sacar la diferencia entre Carga y EWMA 

IdCargaEWMADif
1500500500
253054030
3515530-25
4300350-230
53503600

pero esto no es lo que quiero hacer, aunque me parece muy útil para otras consultas que tengo.

No consigo realizar el calculo que quiero. Podrías decirme como calcular esto:
Tengo esta consulta:

Consulta2
Id Carga EWMA
1 500
2 530
3 515

EWMA=(Carga del registro actual*(2/(28+1))+((1-(2/(28+1)))*EWMA del registro anterior)

Tendría que quedar algo asi:

Consulta
IdCargaEWMA
1500500
2530502,069
3515502,961

Muchas gracias por tu tiempo!!!


Editado por danigarva - 15/Octubre/2019 a las 17:30
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 14025
Enlace directo a este mensaje Enviado: 15/Octubre/2019 a las 18:38
A ver danigarva, de lo que se trata es de aprender, lo suyo es que basándote la función que calcula la diferencia con el anterior te crees la tuya, ¿como? .. calculando el valor que quieres conservar y asignándolo a la función, así en el siguiente registro podrás hacer uso del mismo.
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable