martinzima
asked on
Outlook No Subject Warning Stops Working
Hi,
I copied the below code into the "ThisOutlookSession" and it works fine until I reboot outlook. When I check the code after the reboot, Outlook has moved it into "Module1" and stops running the code (i.e. does not warn me before I send an email without a subject).
Can anyone please help.
Thanks,
Martin
I copied the below code into the "ThisOutlookSession" and it works fine until I reboot outlook. When I check the code after the reboot, Outlook has moved it into "Module1" and stops running the code (i.e. does not warn me before I send an email without a subject).
Can anyone please help.
Thanks,
Martin
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
Dim m As Variant
Dim strBody As String
Dim strSubject As String
Dim intIn As Long
Dim intAttachCount As Integer, intStandardAttachCount As Integer
On Error GoTo handleError
'Edit the following line if you have a signature on your email that includes images or other files. Make intStandardAttachCount equal the number of files in your signature.
intStandardAttachCount = 0
strBody = LCase(Item.Body)
strSubject = Item.Subject
intIn = InStr(1, strBody, "original message")
If intIn = 0 Then intIn = Len(strBody)
intIn = InStr(1, Left(strBody, intIn), "attach")
intAttachCount = Item.Attachments.Count
If intIn > 0 And intAttachCount <= intStandardAttachCount Then
m = MsgBox("It appears that you mean to send an attachment," & vbCrLf & "but there is no attachment to this message." & vbCrLf & vbCrLf & "Do you still want to send?", vbQuestion + vbYesNo + vbMsgBoxSetForeground)
If m = vbNo Then Cancel = True
End If
If Len(Trim(strSubject)) = 0 Then
If MsgBox("Subject is Empty. Are you sure you want to send the Mail?", vbYesNo + vbQuestion + vbMsgBoxSetForeground, "Check for Subject") = vbNo Then
Cancel = True
End If
End If
handleError:
If Err.Number <> 0 Then
MsgBox "Outlook Attachment Reminder Error: " & Err.Description, vbExclamation, "Outlook Attachment Reminder Error"
End If
End Sub
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Think the code file was corrupt. I copied the code back into ThisOutlookSession and it asked me if I wanted to save VbaProject.OTM, I restarted Outlook a few times but it seems to work OK.
SO NOTE TO READERS:
The code I posted should work straight away, but if it stops, re-copy it to "ThisOutlookSession", reboot outlook and check if it works.
Thanks,
Martin
SO NOTE TO READERS:
The code I posted should work straight away, but if it stops, re-copy it to "ThisOutlookSession", reboot outlook and check if it works.
Thanks,
Martin
You will need to set it to run in all sessions, but I'm not sure where that is...