Alarma de vencimiento con sonido y colores en las celdas en excel

Tengo una columna donde van ingresadas fechas de crédito a vencimiento, lo que necesito es que la celda se ponga lila o azul claro faltando 45 días (que es el tiempo de crédito), faltando 8 días cambie a color amarillo y faltando un día y en adelante se ponga rojo y que además empiece a sonar la alarma. Todo esto hasta que en la casilla del frente se coloque CANCELADA.

Dirigido a: Dante amor

1 Respuesta

Respuesta
2

Me puedes enviar tu archivo para adaptar la macro, me pones un ejemplo de cada uno.

Importante! Me puedes decir en qué momento quieres que se ejecute la macro:

1. Cuando abres el archivo

2. ¿Cuándo estás capturando la fecha?

Espero tus comentarios y tu archivo.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Taira Diaz” y el título de esta pregunta.

muchas gracias ya te he enviado el correo quedo atenta a tu respuesta.

Te anexo la macro

Public Declare Function Beep Lib "kernel32" _
   (ByVal dwFreq As Long, _
    ByVal dwDuration As Long) As Long
Sub revisar()
'Por.Dante Amor
    Set h1 = Sheets("PEDIDOS")
    c = "K"
    For i = 3 To h1.Range(c & Rows.Count).End(xlUp).Row
        h1.Cells(i, c).Interior.ColorIndex = xlNone
        If UCase(h1.Cells(i, "L")) <> "CANCELADA" Then
            If h1.Cells(i, c) = Date Or h1.Cells(i, c) = Date + 1 Then
                h1.Select
                h1.Cells(i, c).Select
                h1.Cells(i, c).Interior.Color = vbRed
                Beep 880, 300
                MsgBox "Alarma de vencimiento"
            End If
            If h1.Cells(i, c) = Date + 8 Then
                h1.Cells(i, c).Interior.ColorIndex = 6
            End If
            If h1.Cells(i, c) = Date + 45 Then
                h1.Cells(i, c).Interior.ColorIndex = 39
            End If
        End If
    Next
End Sub

Saludos.Dante Amor

Hola buenos días,

Mira que inserto la macro pero no funciona.

Te falta insertar esta macro en los eventos de thisworook

Private Sub Workbook_Open()
revisar
End Sub

Pero te envié el archivo para que lo pruebes en el mismo archivo.

Gracias ya lo recibí pero tengo una pregunta:

En la que esta lila a 45 días como lo cambio para que no solo este lila exacto los 45 días sino el rango de 45 a los 8 días en que cambia a amraillo.

Ya que al pasar a 44 días deja de tener el color lila, lo que necesito es que se mantenga hasta que pase a amarillo.

Muchas gracias

De igual manera el amarillo se mantenga hasta que cambie a rojo y el rojo se mantenga hasta que coloque cancelado.

Ya que solo están de su color el día exacto y al otro día ya no tiene nada de color.

Gracias

Ahora sí, actualiza esta macro en el archivo que te envié

Sub revisar()
'Por.Dante Amor
    Set h1 = Sheets("PEDIDOS")
    c = "K"
    For i = 3 To h1.Range(c & Rows.Count).End(xlUp).Row
        h1.Cells(i, c).Interior.ColorIndex = xlNone
        If UCase(h1.Cells(i, "L")) <> "CANCELADA" Then
            If h1.Cells(i, c) = Date Or h1.Cells(i, c) = Date + 1 Then
                h1.Select
                h1.Cells(i, c).Select
                h1.Cells(i, c).Interior.Color = vbRed
                Beep 880, 300
                MsgBox "Alarma de vencimiento"
            End If
            If h1.Cells(i, c) >= Date + 2 And h1.Cells(i, c) <= Date + 8 Then
                h1.Cells(i, c).Interior.ColorIndex = 6
            End If
            If h1.Cells(i, c) >= Date + 9 And h1.Cells(i, c) <= Date + 45 Then
                h1.Cells(i, c).Interior.ColorIndex = 39
            End If
        End If
    Next
End Sub

Saludos.Dante Amor

Recuerda valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas