Calcular Importe pasando por varios criterios

Recurro a ustedes esperando me puedan ayudar con un problema que tengo, les explico:

De entrada necesito hacer una multiplcacion como esta:

([Área] * [Altura] * 80) ----> donde "Area" y "Altura" son mis campos en la tabla y 80 es un valor fijo, esto se guardara en otro campo llamada "importe". Pero dicha multiplicación debe respetar lo que contenga los siguientes campos, si mi campo [Franja] (campo Si/No) esta en 0 (o Falso) y el campo [Acción a tomar] (combobox) tiene algún valor como "OPERA" o "REUBICA" o "POR DESMONTAR" ---> Entonces que realice la multiplicación en el campo "Importe...

Solo en caso de que el campo [Franja] este en 1 (o VERDADERO) y el campo [AccionaTomar] tengo algún valor como "DESMONTAJE OK" o "REUBICA OK"... El valor del campo [Importe] será igual a 0 (Cero).

Como ven estoy un poco perdido y no se como aplicarlo.

2 Respuestas

Respuesta
2

Carlos: La verdad es que me queda algo confuso, pero partimos del Estado de un CheckBox.

Entonces:

SelectCase Me.Franja.Value
    Case 0
       If Me.[Accion a Tomar] = "OPERA" Or Me.[Accion a Tomar] = "REUBICA" Or Me.[Accion a Tomar] = "POR DESMONTAR" Then
            Me.Importe = Nz(Me.Area,0)*Nz(Me.Altura,0)*80
       Else
            'otra cosa o nada
       End If
    Case -1
       If Me.[Accion a Tomar] = "DESMONTAJE OK" Or Me.[Accion a Tomar] = "REUBICA OK" Then
           Me.Importe = 0
       Else
           'Si quieres que haga otra cosa
       End If
    Case Else
       MsgBox "Algo raro pasa porque éste Mensaje no debe salir",vbCritical, "ERROR GRAVE"
End Select

Parto de la base de que estás en un Formulario, y que los "Controles" tienen el nombre que has citado para los Campos de la Tabla.

El evento en el que lo colocas, elige tú el que mejor se adapte a tus necesidades.

Puede ser en el AfterUpdate de los dos TextBox de Area y Altura. Un saludo >> Jacinto

Respuesta
2

Suponiendo que el combo se llame(propiedades-otras-nombre), por ejemplo Elegir en cualquier evento puedes poner

If Franja=0 and elegir="opera" or elegir="reubica" or elegir="por desmontar" then

importe=area*altura*80

else

importe=0

end if

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas