** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - Crear un campo calculado que se pueda modificar
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoCrear un campo calculado que se pueda modificar

 Responder Responder
Autor
Mensaje
Brown180 Ver desplegable
Nuevo
Nuevo


Unido: 07/Agosto/2018
Localización: Tlaxcala, Méxic
Estado: Sin conexión
Puntos: 18
Enlace directo a este mensaje Tema: Crear un campo calculado que se pueda modificar
    Enviado: 08/Agosto/2018 a las 18:06
Tengo una lluvia de cosas por aprender en Access, comenze manejando una base de datos obsoleta (y sin conocer absolutamente nada) para capturar información sobre boletaje de una terminal de autobuses y bueno, con el paso del tiempo la he ido mejorando y aprendiendo con ello. Y recien que he descubierto que este foro esta activo, bueno, espero puedan seguir ayudandome.

Al Capturar boletaje tengo este campo donde selecciono el producto que estoy ocupando, lo llamo [Producto] y este a su vez tiene la funcion de cuadro combinado, relacionado con otra tabla que me permite seleccionar el Producto. 

Producto
idProducto Producto Nomenclatura Valor Unitario
1 Pue Sta ana Boleto 23
2 Pue Sta Ana 50% Boleto 12
3 Pue San Pablo Boleto 8
4 Pue SanLuis Boleto 21
5 Pue SanCosme Boleto 21

Dspues de Seleccionar el Producto, capuro los folios (Boletos) que estoy ocupando de ese producto
y esto me arroja la cantidad de boletos, en otro campo capturo el [Precio unitario] para obtener por medio de formula el precio de todos los boletos. 

Estoy buscando entonces una funcion en el formulario que en lugar de capturar manualmente el precio unitario, me arroje en automatico el precio en base al producto seleccionado (que ya dispone de la relación por ser un cuadro combinado), PERO a su vez, este registro se pueda modificar si yo lo deseo posteriormente. Tal como sucede cuando asignas un valor predeterminado en las propiedades de un campo.


¿Será que estoy intentando algo imposible? 

¡Desde ya muchas gracias!
Arriba
emiliove Ver desplegable
Moderador
Moderador


Unido: 16/Junio/2009
Localización: Mexico
Estado: Sin conexión
Puntos: 4669
Enlace directo a este mensaje Enviado: 08/Agosto/2018 a las 18:57
Hola Brown180

Puedes irte a los orígenes, por ejemplo access cuenta con una base de datos de muestra llamada Neptuno o Northwind, una vez dentro puedes mirar como trabaja el Formulario Pedido y como hacen con lo que pides en su subformulario.

Saludos.
Arriba
Brown180 Ver desplegable
Nuevo
Nuevo


Unido: 07/Agosto/2018
Localización: Tlaxcala, Méxic
Estado: Sin conexión
Puntos: 18
Enlace directo a este mensaje Enviado: 08/Agosto/2018 a las 19:28
Publicado originalmente por emiliove emiliove escribió:

Hola Brown180

Puedes irte a los orígenes, por ejemplo access cuenta con una base de datos de muestra llamada Neptuno o Northwind, una vez dentro puedes mirar como trabaja el Formulario Pedido y como hacen con lo que pides en su subformulario.

Saludos.

Genia, ya mismo la investigo Emilove, ¡muchas gracias! 

¡Excelente día!Tongue
Arriba
MexMan70 Ver desplegable
Colaborador
Colaborador


Unido: 17/Julio/2007
Localización: DarkSide
Estado: Sin conexión
Puntos: 9220
Enlace directo a este mensaje Enviado: 08/Agosto/2018 a las 20:11
Si ya tienes un cuadro combinado en el cual seleccionas el Producto, agrega la columna del Valor Unitario, en el evento al Salir de tu Cuadro combinado vas a generar un procedimiento en el cual pongas algo así (adapta según el nombre de tus objetos):

Me.TuControlPrecio = Me.TuCuadoCombinado.Column(2)

La propiedad columna hace referencia al valor de los campos que agregues en tu cuadro combinado. Para invocar al campo se hace referencia al numero de posición de cada campo empezando por el cero.

Saludos !
OneDrive: http://sdrv.ms/Vk6eJd
Arriba
Brown180 Ver desplegable
Nuevo
Nuevo


Unido: 07/Agosto/2018
Localización: Tlaxcala, Méxic
Estado: Sin conexión
Puntos: 18
Enlace directo a este mensaje Enviado: 08/Agosto/2018 a las 22:49
Publicado originalmente por MexMan70 MexMan70 escribió:

Si ya tienes un cuadro combinado en el cual seleccionas el Producto, agrega la columna del Valor Unitario, en el evento al Salir de tu Cuadro combinado vas a generar un procedimiento en el cual pongas algo así (adapta según el nombre de tus objetos):

Me.TuControlPrecio = Me.TuCuadoCombinado.Column(2)

La propiedad columna hace referencia al valor de los campos que agregues en tu cuadro combinado. Para invocar al campo se hace referencia al numero de posición de cada campo empezando por el cero.

Saludos !

Muchas graias! 

Tengo las siguientes dudas. ¿Esto lo hago dentro del formulario? ¿En el cuadro combinado te refieres al campo en el formulario donde selecciono el [Producto] ? 

Cuando coloco la formula de la siguiente forma

Me.Precio Unitario = Me.Producto.Column(6)

Me dice que no reconoce .Me y es que uso una version en español de access, y no encuentro la función  en español. 

Gracias! 
Arriba
pitxiku Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 27/Septiembre/2017
Localización: En mi casa
Estado: Sin conexión
Puntos: 632
Enlace directo a este mensaje Enviado: 09/Agosto/2018 a las 18:08
Eso es código VBA, y se coloca usando el editor VBA. Si no lo conoces mucho, tal vez te sea más sencillo usar la acción de macro EstablecerValor:

- https://support.office.com/es-es/article/Acción-de-macro-EstablecerValor-36dfca71-0d8c-40fc-8b9f-31cfe5f48aab

O la acción DefinirPropiedad, por eso de evitar los problemas de confianza:

- https://support.office.com/es-es/article/DefinirPropiedad-acción-de-macro-a8ecea05-afbb-4234-a007-42dd131a2559

Te he hecho un pequeño ejemplo:

- https://1drv.ms/u/s!AsYMk9OS3HAChly_AHZ3Pqdf9Mvh

Se llama Ventas y dispone de lo siguiente:

- Una tabla de productos, con id, nombre y precio unitario.
- Una tabla de ventas, con el producto que hemos vendido, la cantidad y el precio de venta.
- Un formulario de ventas, donde al seleccionar el producto, se toma el precio unitario para guardarlo en la tabla de ventas, pero que puede ser modificado.

Revisa cómo funciona el formulario, sobre todo el cuadro combinado y la macro de su evento Después de actualizar.
Arriba
Brown180 Ver desplegable
Nuevo
Nuevo


Unido: 07/Agosto/2018
Localización: Tlaxcala, Méxic
Estado: Sin conexión
Puntos: 18
Enlace directo a este mensaje Enviado: 09/Agosto/2018 a las 18:28
Ya los estoy revisando hermano, muchisimas gracias!! Clap
Arriba
Brown180 Ver desplegable
Nuevo
Nuevo


Unido: 07/Agosto/2018
Localización: Tlaxcala, Méxic
Estado: Sin conexión
Puntos: 18
Enlace directo a este mensaje Enviado: 09/Agosto/2018 a las 21:35
Cree una Macro en un cuadro combinado para que me arroje valores predeterminados en otro campo.
La formula debería ser correcta porque con un formulario único que hice de prueba me funciona. 

=[Forms]![CapBol2]![Producto].[Column](2)

Pero cuando la he aplicado en el formulario con subformulario y procedo a capturar en el campo combinado [Producto] me arroja el siguiente mensaje.

"Microsoft no encuentra el Formulaio "CapBol2 al que hace referencia"

Ya intente cambiar la formula con el nombre de [CapBol1] que es el formulario principal pero tampoco funciona, me arroja "el objeto no coincide con el objeto de automatizacion "Column" y entiendo que es porque los campos no estan relacionados con esa parte del formulario.

¿Que esta mal? :( Ayuda 


Arriba
Brown180 Ver desplegable
Nuevo
Nuevo


Unido: 07/Agosto/2018
Localización: Tlaxcala, Méxic
Estado: Sin conexión
Puntos: 18
Enlace directo a este mensaje Enviado: 09/Agosto/2018 a las 22:22
¡Parece que lo resolvi!

Deduje que al tratarse de un subformulario podia colocar solo [Formulario] en lugar de [Formularios] y luego [CapBol2] 

Entonces quedó de esta manera:

=[Formulario]![Producto].[Column](2)

Funciona bien ahora!

Dejo a consideración que eliminen el tema o lo dejen para alguien que tenga el mismo problema!! 

¡Abrazos a todos!
Arriba
emiliove Ver desplegable
Moderador
Moderador


Unido: 16/Junio/2009
Localización: Mexico
Estado: Sin conexión
Puntos: 4669
Enlace directo a este mensaje Enviado: 09/Agosto/2018 a las 22:30
Hola Brown180

Me alegra que lo resolvieras, es preferible seguir en el hilo que abriste ya que se trata del mismo problema, tomate el tiempo y lee las normas del foro

Cerramos, saludos.
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable