Como hacer una macro para fechas de vencimiento

Lo que necesito es que cuando yo abra el archivo de Excel me muestre en un mensaje los archivos que están que caducan

Necesito que el mensaje empiece empiece a salir a archivos que les falte 15 días para que caduquen,

Tengo una base de datos con unos archivos con unas vigencias, la hoja se llama "IOS"

Si alguien me pudiera colaborar le quedaría infinitamente agradecido

1 respuesta

Respuesta
2

Puedes poner una imagen de lo que tienes.

¿Cuándo dices archivos te refieres a una lista de nombre que tienes en una hoja de excel?

¿En qué columna tienes la fecha?

Y cómo quieres el mensaje, puedes poner un ejemplo

Dante ud siempre tan amable amigo!

si tengo una hoja y se llama "IOS".

Esta es la base de datos que yo tengo, lo que yo son unas instrucciones operacionales en el metro de medellín colombia eso tiene una vigencia y unos estados, yo necesito que las que están en estado vigente faltando 15 días me avise en un mensaje

¿Pero no veo en tu imagen cuál debe aparecer en el mensaje y exactamente qué quieres que aparezca en el mensaje?

Puedes explicar tu imagen con detalle, es decir, veo en tu imagen 2 fechas Desde y Hasta, ¿cuál se debe considerar? Y en la columna H tienes un estado, ¿qué se debe revisar?

Las dos columnas son la vigencia (Desde y Hasta) la columna del estado esta filtrada en solo vigentes, eso lo hace cada ves que yo abro la aplicación, lo que yo necesito es que cuando yo abra la aplicación se muestre un mensaje de las IO que les falta 15 días para caducar, el mensaje debe decir "la IO 2017 XX esta a punto de vencerse, solo tiene 15 días "

Pero no me estás explicando el ejemplo.

Tienes que explicarme un ejemplo de lo que pusiste en la imagen.

Por ejemplo: "La IO 25 está a punto de vencerse, solo tiene 15 días"

En tu imagen veo varias IO, utiliza una como ejemplo.

Sigo sin entender cuál fecha es la que debo revisar y contra qué la debo comparar y qué relación tiene la columna de Estado.

Nuevamente, toma una IO de tu imagen dime qué fecha tiene, pero no me escribas la fecha xxyyzzzz, utiliza una fecha real de tu imagen, me dices contra qué otra fecha la comparo y me dices cómo obtuviste que solamente tiene 15 días.

¿Quieres un mensaje por cada registro encontrado?

Lo primero es que se debe comparar con la fecha actual, la fecha inicial es el día cuando entro en vigencia la IO.

Por ejemplo la IO-2016-93 se vence el 31/10/2017.

Cuando este cerca de ese día debe avisar al usuario 15 días antes de llegar a esa fecha limite

Los quince días no los di yo, es la orden que me dieron para ponerle ahí, esos quince días me lo dieron es para que si una io esta a punto de vencerse puedan editarlo y darle más vigencia

Entonces, según tu ejemplo, suponiendo que estamos a 16 de octubre, entonces el 16 de octubre mas 15 días es igual a 31 de octubre, entonces debe aparecer un mensaje que diga :

"La IO 93 está a punto de vencerse, solo tiene 15 días"

A eso me refiero con los 15 días, qué fecha comparo contra qué fecha.

Pero sigues sin explicarme qué relación tiene la columna estado, voy a asumir, que si en la columna Estado dice "Vigente", entonces que lo considere para validar la fecha.

Te anexo la macro

Sub Alertas()
'Por.Dante Amor
    For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
        If Cells(i, "H") = "Vigente" And Date + 15 = Cells(i, "E") Then
            MsgBox "La IO " & Cells(i, "A") & " " & Cells(i, "B") & " está a punto de vencerse, solo tiene 15 días"
        End If
    Next
    MsgBox "fin"
End Sub

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Avísame cualquier duda

.

si exactamente, hay que considerar el estado que sea vigente para poder hacer la comparación

Pero bueno digamos que hoy es 2 de marzo y la io-93 tiene vigencia hasta 30 de diciembre del mismo año, la macro debe mandar un mensaje el 15 de diciembre diciendo La IO 93 está a punto de vencerse, solo tiene 15 días

que pena dante es 5 de marzo

¿Probaste la macro?

Revisa la macro, pon datos de prueba con fecha 20 de mayo, te debe enviar el mensaje.

.

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas