Я пытаюсь использовать этот сценарий VBA (который отправляет мне электронное письмо, если задача достигает своей даты выполнения) каждый час или около того. Я просмотрел учебники и попробовал несколько примеров, но каждый раз, когда я пытаюсь запустить его, я получаю сообщение. Кто-нибудь будет достаточно любезен, чтобы дать ему быстрый взгляд?
Спасибо!
Option Explicit
Private Sub TaskTracker()
Dim FormulaCell As Range
Dim FormulaRange As Range
Dim NotSentMsg As String
Dim MyMsg As String
Dim SentMsg As String
Dim MyLimit As Double
NotSentMsg = "Not Sent"
SentMsg = "Sent"
'Equals the MyLimit value it will triger the email
MyLimit = Date
Set FormulaRange = Me.Range("E5:E35")
On Error GoTo EndMacro:
For Each FormulaCell In FormulaRange.Cells
With FormulaCell
If .Value = MyLimit Then
MyMsg = NotSentMsg
If .Offset(0, 1).Value = NotSentMsg Then
strTO = "[email protected]"
strCC = "[email protected]"
strBCC = ""
strSub = "Greetings " & Cells(FormulaCell.Row, "B").Value
strBody = "Hi Sir, " & vbNewLine & vbNewLine & _
"This email is to notify that you need to do your task : " & Cells(FormulaCell.Row, "B").Value & _
vbNewLine & vbNewLine & "Regards, Yourself"
If sendMail(strTO, strSub, strBody, strCC) = True Then MyMsg = SentMsg
'Call Mail_with_outlook2
End If
Else
MyMsg = NotSentMsg
End If
Application.EnableEvents = False
.Offset(0, 1).Value = MyMsg
Application.EnableEvents = True
End With
Next FormulaCell
ExitMacro:
Exit Sub
EndMacro:
Application.EnableEvents = True
MsgBox "Some Error occurred." _
& vbLf & Err.Number _
& vbLf & Err.Description
Call AutoRun
End Sub
Sub AutoRun()
Application.OnTime Now + TimeValue("00:00:10"), "TaskTracker"
End Sub
Насколько я понимаю, сценарий должен вызвать подпрограмму автозапуска перед завершением. Но это не так. Когда я пытаюсь вручную запустить сам модуль AutoRun, он сообщает: «Невозможно запустить макрос» *\Task Tracker.clsm'TaskTracker'. Макрос может быть недоступен в этой книге, или все макросы могут быть отключены».
End If
не хватает? Я вижу 3IF
только 2End If
- person Fred   schedule 28.01.2016If... Then... Else...
.End If
не нужно. - person Egan Wolf   schedule 28.01.2016