Código vb funciona en subform y no desde el form

Hola,
La verdad es que llevo tiempo atorado con esto y no doy con solución. El problema es que necesito afectar el cálculo de un campo que se encuentra en función de un campo en el form principal. Ese mismo código me funciona desde el form y es el siguiente:
Private Sub IdArtículo_AfterUpdate()
Dim combo As Control
'''''Fija los valores (Precio Unitario, Moneda, Tiempo de Entrega) para la partida en base a la tabla de productos servicios
Me![Precio Unitario] = Me![UnitFact]
Me![Moneda] = Me![Moneda_P]
Me![Tiempo de Entrega] = Me![Productos Servicios.Tiempo de Entrega]
'Regresa enfoque al IdArtículo
Set combo = Forms!Cotización![Detalle de CotizaciónC]!IdArtículo
combo.Requery

End Sub
Y, trato desde el form principal enviar enfoque y hacer lo mismo pero nada no funciona
Private Sub Descuento_AfterUpdate()
Dim combo As Control
[Detalle de CotizaciónC]![IdArtículo].SetFocus
'Fija los valores (Precio Unitario, Moneda, Tiempo de Entrega) para la partida en base a la tabla de productos servicios
Me![Precio Unitario] = Me![UnitFact]
Me![Moneda] = Me![Moneda_P]
Me![Tiempo de Entrega] = Me![Productos Servicios.Tiempo de Entrega]
End Sub
Los que me dan problemas son [UnitFact] (es un cuadro de texto un una operación de multiplicación) y [Productos Servicios. Tiempo de Entrega] (es un campo) y no entiendo porqué no da problemas [Moneda_P].
Gracias por cualquier aporte con esto o con una solución alternativa.

1 respuesta

Respuesta
1
Probá expresando el código de esta manera:
---------------------------------------------------------
Private Sub Descuento_AfterUpdate()
Dim combo As Control
Forms![Detalle de CotizaciónC]![IdArtículo].SetFocus
Me.Precio_Unitario = Me.UnitFact
Me.Moneda = Me.Moneda_P
Me.Tiempo_de_Entrega = Me.Productos_Servicios_Tiempo_de_Entrega
End Sub
-----------------------------------------------------------
Si no te funciona avisame...
Gracias por responder,
Ya intenté tu sugerencia, más sigue sin funcionarme y es raro puesto que P_Moneda sigue funcionando.
En cuanto tenga un tiempo intentaré con sentencias SQL o ¿Tienes otra sugerencia o alternativa que me puedas confiar?
Saludos Gracias!
Si querés podes enviarme la BD al correo, así tal vez pueda resolver el problema ;)
[email protected]
Hola, te envíe BD vía correo. Quedo en espera de tus amables comentarios.
Saludos
A ver... Probá con algo así:
Forms![Cotización]![Detalle de CotizaciónC]!IdArtículo.SetFocus
Forms![Cotización]![Detalle de CotizaciónC]![Precio Unitario] = Me.Factor
Me.Moneda = Me.Moneda_P
Me.Tiempo_de_Entrega = Forms![Cotización]![Detalle de CotizaciónC]![Productos Servicios.Tiempo de Entrega]
Lo que tenés que tener en cuenta es que cuando te referís a un objeto del subformulario lo tenés que hacer así:
Forms![Cotización]![Detalle de CotizaciónC]![OBJETO]
Y cuando es del formulario:
me.OBJETO (Si tiene espacios ponés _ ej: Detalle_de_CotizaciónC)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas