У меня есть код, согласно которому все мои ячейки сформулированы условно, и из одной ячейки (B6) значение изменится.
Я хочу, чтобы электронная почта отправлялась каждый раз, когда значение ячейки B6 равно 16, 64 и 120.
В настоящее время он будет отправлять только в 16, а также он начнет отправлять из любых ячеек, как только достигнет цели 16.
Option Explicit
Private Sub Worksheet_Calculate()
Dim FormulaRange As Range
Dim NotSentMsg As String
Dim MyMsg As String
Dim SentMsg As String
Dim MyLimit As Double
On Error GoTo errHandler:
Sheet2.Unprotect Password:="1234"
NotSentMsg = "Not Sent"
SentMsg = "Sent"
'Above the MyLimit value it will run the macro
MyLimit = 15
'Set the range with the Formula that you want to check
Set FormulaRange = Me.Range("B6")
For Each FormulaCell In FormulaRange.Cells
With FormulaCell
If IsNumeric(.Value) = False Then
MyMsg = "Not numeric"
Else
If .Value > MyLimit Then
MyMsg = SentMsg
If .Offset(0, 1).Value = NotSentMsg Then
Call Mail_Outlook_With_Signature_Html_1
End If
Else
MyMsg = NotSentMsg
End If
End If
Application.EnableEvents = False
.Offset(0, 1).Value = MyMsg
Application.EnableEvents = True
End With
Next FormulaCell
'ExitMacro:
' Exit Sub
'EndMacro:
Application.EnableEvents = True
Sheet2.Protect Password:="1234"
' MsgBox "Some Error occurred." _
' & vbLf & Err.Number _
' & vbLf & Err.Description
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