Buscar dato por fechas en VBA

Tengo la siguiente tabla en Access 2013 con los tipos impositivos

Registro    FIVA              FFIVA          %IVA

----------------------------------------------------------------------

1                01/01/1995  30/06/2010    15

2               01/07/2010   30/09/2012    18

3              01/10/2012    31/12/2999    21

---------------------------------------------------------------------

Necesito buscar que porcentaje de IVA debería aplicarse según una fecha dada. Por ejemplo para la fecha 17/12/2015 deberá mostrar 21, para la fecha 01/08/2011 deberá mostrar 18 y para una fecha de 01/01/2000 deberá mostrar 15

3 Respuestas

Respuesta
2

Si bien la manera propuesta por Jacinto es correcta, tiene el "inconveniente" de que si hay un cmabio normativo y tienes que añadir otro valor a la tabla, o modificar alguno de los existentes, te exige modificar el código.

Si usas alguna de las funciones de búsqueda de Access, o te creas una función personalizada, ese problema lo evitas.

Por ejemplo, si tienes un cuadro de texto independiente en un formulario en el que quieras mostrar el porcentaje, le puedes poner como origen de control:

=DPrim("[%IVA]","NombreTabla","FFIVA>=#" & [FechaFactura] & "#")

Siendo FechaFactura el campo del formulario en el que tienes la fecha.

Respuesta
1

Jesús: Voy a suponer que la fecha que Vas a sondear está en un TextBox de un Formulario.

A ese TextBox le llamaremos TxtFechaSondeo. Otro para el IVAVigente

Entre otras maneras de hacerlo, puedes poner éste código en el Evento AfterUpdate de TxtFechaSondeo, y recuerda activarlo como Procedimiento de Evento en Propiedades.

Private Sub TxtFechaSondeo_AfterUpdate()

If Me.TxtFechaSondeo <= #30/06/2010# Then

Me.IVAVigente = 18

ElseIf Me.TxtFechaSondeo > #30/06/2010# And Me.TxtFechaSondeo <= #30/09/2012# Then

Me.IVAVigente = 18

Else

Me.IVAVigente = 21

End If

End Sub

No lo he probado pero supongo que no tendrás dificultades. Recuerda darle Formato a TxtFechaSondeo como Fecha Corta, y si tienes dificultad por tu versión de Access con las fechas de la forma en que yo las cito de dd/mm/aaaa, las pones en formato mm/dd/aaaa.

Saludos >> Jacinto

Disculpa, que he puesto el primer IVA como 18 y es 15, pero supongo que verás que es un error. Saludos >> jacinto

Respuesta
1

Lo de Dprim no te funcionará si no cambias las comas por punto y coma

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas