Ejecutar en excel macro automáticamente VBA

Tengo una macro que ya programé y funciona bien, básicamente me envía un correo con cierta información. Lo que necesito es que esa macro se ejecute de lunes a vieres a las 8 am, preferiblemente con el libro cerrado.

Respuesta

Esta macro hace que se ejecute todos los dias, es lo unico que he encontrado no se si te servira

"Pega esto en ThisWorkbook"

Private Sub Workbook_Open(): On Error Resume Next
Application.StatusBar = "Proceso desactivado. Control+a para activarlo."
If ActiveWorkbook.Names("ACTIVADA") = "=1" Then
   If Date = CDate(ActiveWorkbook.Names("ACTIVADA").Comment) Then
      Call Proceso
      Call Activar
      Exit Sub
   Else
   Application.StatusBar = "Proceso activado para el día " & _
               ActiveWorkbook.Names("ACTIVADA").Comment & ". Control+d para desactivarlo."
   End If
End If
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.StatusBar = False
End Sub

=============================================================================

"Pega esto en un modulo"

Sub Activar(): On Error Resume Next
ActiveWorkbook.Names("ACTIVADA").Delete
ActiveWorkbook.Names.Add Name:="ACTIVADA", RefersToR1C1:="=1"
ActiveWorkbook.Names("ACTIVADA").Comment = Date + 1 'Días
Application.StatusBar = "Proceso activado para el día " & _
            ActiveWorkbook.Names("ACTIVADA").Comment & ". Control+d para desactivarlo."
End Sub

Sub Desactivar(): On Error Resume Next
ActiveWorkbook.Names("ACTIVADA").Delete
ActiveWorkbook.Names.Add Name:="ACTIVADA", RefersToR1C1:="=0"
ActiveWorkbook.Names("ACTIVADA").Comment = ""
Application.StatusBar = "Proceso desactivado. Control+a para activarlo."
End Sub

Sub Proceso()
'Tu macro a ejecutar cada día
End Sub

============================================================================

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas