¿Cómo realizar un condicional para que las unidades de Kg me aparezca 1000 en gramos?

Necesito que en un campo llamado Gramos me salte automáticamente 1000 cuando ponga que las unidades del pedido son en Kg... En la imagen esta puesto, pero de manera manual. Tendría que hacerlo para que me de automáticamente solo cuando la unidad sea Kg

3 Respuestas

Respuesta
1

En mi caso utilizo una función definida por el usuario, algo como:

Function gramos() As double

' En esta función supongo que tenemos una tabla tblmedidas con tres campos idmedida, medida y peso_gramos

Dim dmedida as double

Dim dcantidad As double

Dim pesounidad as double

dmedida=Me.cbounidad  'Asumo que el combo box se llama cbounidad

dcantidad=Me.Cantidad

pesounidad=nz(dlookup("[peso_gramos]","tblmedidas","idmedida=" & dmedida),0)

' esdecir idmedida=1 medida=Kg, peso_gramos=1,000 idmedida=2 medida=Bolsa 'peso_gramos=50 idmedida=3 medida=Unidad, peso_gramos=10

     gramos=dcantidad * pesounidad

  End Function

Ahora llamo la función desde el subformulario en el campo Gramos, en Valor Predeterminado anoto =gramos()

Por utlimo en los campos Cantidad y cbounidad en el evento Después Actualizar anotamos:

Me. Recalc

Aunque se ve más largo tiene la ventaja que puede actualizar la tabla de medidas de acuerdo con las necesidades y no tendrá que modificar el código en un futuro.

Respuesta
2

Personalmente quitaría el cuadro de texto Gramos ¿para qué decir que si eliges Kg, los gramos son 1000?.

En el evento Después de actualizar del combinado al que llamaremos Elegir puedes poner, algo así como

Select case elegir

case is="kg"

totalgramos=cantidad*1000

case is="paquete de bolsas"

totalgramos=cantidad*50

case is.....

End select

Respuesta
1

En las propiedades de tu combobox al hacer click

private sub combo_click then
If me.Combo = Kg then
 me.gramos = 1000
end if
End sub

es algo así como quedaran la condicion . Tu sabras como acomodar tu combo de acuerdo al campo dependiente que tengas. Y los gramos  pueden ser entre comillas o sin comillas dependiendo como tengas tu campo en tu tabla si en entero sera 1000 si es cadena "1000"

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas