Evitar el error 438 en un proceso de una rutina de calculo

Utilizo este proceso para calcular el PVP en un formulario continuo:

En el momento que elimino la instrucción de cerrar el form: INTERMEDIOCALCULO dentro del: for .. Next me da el error 438.

Lo intento cerrar porque me relentiza un poco el proceso del calculo.

Tambien tengo el problema que la imagen de forndo que tengo en escritorio me la apaga cuando ejecuto este proceso

Lo que intento es realizar esta rutina de calculo de otra manera para poder realizar la operatoria de forma más rápida.

2 respuestas

Respuesta
1

Hay cosas que en principio no entiendo

1º Defines una variable bucle que luego no usas para nada

2º Usas la instrucción Forms! Intermediocalculopvp. Requery. No sé para que, ya que lo que hace esa instrucción es que el objeto, en este caso dicho formulario "reconsulte" su origen de registros.

3º ¿Por qué no pones las instrucciones de cálculo de Unidades y ÁreaProducto después del

For i=1 to...

De forma que ese cálculo te lo haga en cada registro

4º Como veo que "no te traes" ningún dato del formulario IntermedioCálculo..., ¿no sería más sencillo que con la instrucción "insertaras los valores del formulario en la tabla origen del formulario IntermedioCálculo...

¿Puedes poner alguna imagen de los formularios?

Respuesta
1

Esto nunca le va a funcionar así suprima el Requery, todo indica que el formulario INTERMEDIOCALCULOPVPDIRECTO lo abre oculto para hacer un cálculo pero ¿Qué hace con el cálculo?

Ahora, si utiliza :

Forms!INTERMEDIOCALCULOPVPDIRECTO!idproducto=Me.idproducto

¿Reemplaza o es nuevo registro? ¿No será que debe abrir el formulario filtrado por el idproducto?

DoCmd.OpenForm "INTERMEDIOCALCULOPVPDIRECTO", , , "idproducto=" & Me.idproducto, , acHidden

Personalmente replantearía el proceso haciendo la inserción o update directamente en la tabla origen de datos del formulario .

En error 438 indica que "El objeto no admite esta propiedad o método", porque se están consumiendo todos los recursos del sistema causado posiblemente por el Me. Requery.

De todas maneras espero que encuentre la solución.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas