VBA для отправки электронной почты на основе указанного c значение и срок оплаты - PullRequest
0 голосов
/ 01 марта 2020

Привет, у меня в настоящее время есть код ниже, посредством которого он будет отправлять электронную почту каждый раз, когда он достигает цели 16, 64 и 125, однако возможно ли это вместе с датами

, например, отправлять электронную почту, только если значение 16 находится в пределах 3 месяца, 64, если это в течение 6 месяцев, и 125 в течение одного года.

enter image description here

Private Sub Worksheet_Calculate()

Dim NotSentMsg As String
Dim MyMsg As String
Dim SentMsg As String

On Error GoTo errHandler:
Sheet3.Unprotect Password:="1234"

NotSentMsg = "Not Sent"
SentMsg = "Sent"

With Me.Range("B6")
    If Not IsNumeric(.Value) Then
        MyMsg = "Not numeric"
    Else
        If .Value = 16 <= Now() - 90 Or .Value = 64 <= Now() - 190 Or .Value > 125 <= Now() - 365 Then
            MyMsg = SentMsg
            If .Offset(0, 1).Value = NotSentMsg Then
                Call Mail_Outlook_With_Signature_Html_2
                MsgBox "Email has been sent", vbInformation
            End If
        Else
            MyMsg = NotSentMsg
        End If
    End If
    Application.EnableEvents = False
    .Offset(0, 1).Value = MyMsg
    Application.EnableEvents = True
End With

Application.EnableEvents = True
Sheet3.Protect Password:="1234"
On Error GoTo 0
Exit Sub
errHandler:
MsgBox "An Error has Occurred  " & vbCrLf & _
       "The error number is:  " & Err.Number & vbCrLf & _
       Err.Description & vbCrLf & "Please Contact Admin"

End Sub

1 Ответ

0 голосов
/ 03 марта 2020

Привет Пожалуйста, смотрите скриншот годового дневника

введите описание изображения здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...