Newmail macro

Status
Not open for further replies.
S

Swapnil G.

I have a Outlook macro that checks for perticular words on receiving new

mail. If that word is found, it desplays a msg in msgbox. see below the code;

Private Sub Application_NewMail()

Dim oNS As NameSpace

Dim oFolder As MAPIFolder

Dim oItem As Object

Dim oNewMail As MailItem

Dim var As Variant

Set oNS = GetNamespace("MAPI")

Set oFolder = oNS.GetDefaultFolder(olFolderInbox)

Set oNewMail = oFolder.Items.GetLast

With oNewMail

'MsgBox .Subject & " " & .SenderName

For Each var In Array("Good Work", "Great Job", "Excellent", "Great

Work", "Keep it up", "Very Good")

If InStr(1, .Body, var, vbTextCompare) <> 0 Then

MsgBox "Congrats! " & .ReceivedByName & " Your work just got

appriciated by " & .SenderName, vbOKOnly

MsgBox "Go ahead and record it in CED. ", vbOKOnly

End If

Next

End With

End Sub

This code work fine. However I am getting a weird problem. When I lock and

then unlock my PC, an error msg pops up 'Run-time error 13: Type mismatch'

and on clicking 'debug' button it points out to line " Set oNewMail =

oFolder.Items.GetLast" in above code. Even if I click 'cancel' button, it

opens VBA editior.

Can somebody help me to get rid of this bug please?
 
K

Ken Slovak - [MVP - Outlook]

Maybe that item isn't a mail item? Get it as an Object and test for

item.Class to see if it really is an email item.

Also, NewMail() is hardly the best event to use, it misses things and only

fires at intervals. Use NewMailEx(), which provides a delimited list of

EntryID's for every item that's come in since the last time that event

fired.

"Swapnil G." <Swapnil G.> wrote in message

news:AC1D5845-FF08-4A81-82D2-E552C024BAB9@microsoft.com...
> I have a Outlook macro that checks for perticular words on receiving new
> mail. If that word is found, it desplays a msg in msgbox. see below the
> code;

> Private Sub Application_NewMail()
> Dim oNS As NameSpace
> Dim oFolder As MAPIFolder
> Dim oItem As Object
> Dim oNewMail As MailItem
> Dim var As Variant

> Set oNS = GetNamespace("MAPI")
> Set oFolder = oNS.GetDefaultFolder(olFolderInbox)
> Set oNewMail = oFolder.Items.GetLast

> With oNewMail
> 'MsgBox .Subject & " " & .SenderName

> For Each var In Array("Good Work", "Great Job", "Excellent", "Great
> Work", "Keep it up", "Very Good")
> If InStr(1, .Body, var, vbTextCompare) <> 0 Then
> MsgBox "Congrats! " & .ReceivedByName & " Your work just
> got
> appriciated by " & .SenderName, vbOKOnly
> MsgBox "Go ahead and record it in CED. ", vbOKOnly
> End If
> Next
> End With
> End Sub

> This code work fine. However I am getting a weird problem. When I lock and
> then unlock my PC, an error msg pops up 'Run-time error 13: Type mismatch'
> and on clicking 'debug' button it points out to line " Set oNewMail =
> oFolder.Items.GetLast" in above code. Even if I click 'cancel' button, it
> opens VBA editior.
> Can somebody help me to get rid of this bug please?
 
Status
Not open for further replies.
Similar threads
Thread starter Title Forum Replies Date
M Extract text in existing message body for use in newmail items Using Outlook 17
T Macro to move reply and original message to folder Outlook VBA and Custom Forms 6
D Autosort macro for items in a view Outlook VBA and Custom Forms 2
S HTML to Plain Text Macro - Help Outlook VBA and Custom Forms 1
A Macro to file emails into subfolder based on subject line Outlook VBA and Custom Forms 1
N Help creating a VBA macro with conditional formatting to change the font color of all external emails to red Outlook VBA and Custom Forms 5
S Visual indicator of a certain property or to show a macro toggle Outlook VBA and Custom Forms 2
L Modifying VBA script to delay running macro Outlook VBA and Custom Forms 3
S Macro to extract and modify links from emails Outlook VBA and Custom Forms 3
M Replyall macro with template and auto insert receptens Outlook VBA and Custom Forms 1
L Macro to add Date & Time etc to "drag to save" e-mails Outlook VBA and Custom Forms 8
S Macro for Loop through outlook unread emails Outlook VBA and Custom Forms 2
Globalforester ItemAdd Macro - multiple emails Outlook VBA and Custom Forms 3
S Macro to extract email addresses of recipients in current drafted email and put into clipboard Outlook VBA and Custom Forms 2
witzker HowTo start a macro with an Button in OL contact form Outlook VBA and Custom Forms 12
witzker Macro to move @domain.xx of a Spammail to Blacklist in Outlook 2019 Outlook VBA and Custom Forms 7
S Macro for other actions - Outlook 2007 Outlook VBA and Custom Forms 23
C Macro to extract sender name & subject line of incoming emails to single txt file Outlook VBA and Custom Forms 3
L Macro/VBA to Reply All, with the original attachments Outlook VBA and Custom Forms 2
S Macro to move “Re:” & “FWD:” email recieved the shared inbox to a subfolder in outlook Outlook VBA and Custom Forms 0
S Outlook Macro to send auto acknowledge mail only to new mails received to a specific shared inbox Outlook VBA and Custom Forms 0
S Outlook Macro to move reply mail based on the key word in the subjectline Outlook VBA and Custom Forms 0
Eike Move mails via macro triggered by the click of a button? Outlook VBA and Custom Forms 0
S Macro or plug-in to see if specific person was included in this email Outlook VBA and Custom Forms 4
U Macro for reminders,tasks,calendar Outlook VBA and Custom Forms 4
V macro runs slower on startup than after Outlook VBA and Custom Forms 3
N Macro to move all recipients to CC while replying Outlook VBA and Custom Forms 0
A VBA macro for 15 second loop in send and received just for 1 specific mailbox Outlook VBA and Custom Forms 1
G VBA Macro Using Outlook 4
R Help Revising VBA macro to delete email over different time span Outlook VBA and Custom Forms 0
M Outlook macro to automate search and forward process Outlook VBA and Custom Forms 6
R Macro Schedule every day in Outlook Using Outlook 0
L Moving emails with similar subject and find the timings between the emails using outlook VBA macro Outlook VBA and Custom Forms 1
Healy Consultants Macro to remove inside organization distribution list email address when reply to all recepients Outlook VBA and Custom Forms 0
geofferyh Cannot get Macro to SAVE more than one message attachment??? Outlook VBA and Custom Forms 5
N How can I increase/faster outlook VBA Macro Speed ? Using Outlook 2
4 Macro to set the category of Deleted Item? Outlook VBA and Custom Forms 2
D.Moore Folder view settings by VBA macro Outlook VBA and Custom Forms 57
A Outlook macro to create search folder with mail categories as criteria Outlook VBA and Custom Forms 3
Dave A Run macro on existing appointment when it changes Outlook VBA and Custom Forms 1
V Outlook Macro to show Flagged messages Outlook VBA and Custom Forms 2
O Run macro automatically at sending an email Using Outlook 11
R Retain Original Message When Forwarding With Macro Outlook VBA and Custom Forms 3
C Macro to add multiple recipients to message Outlook VBA and Custom Forms 3
B Reply and replyall macro is not working Outlook VBA and Custom Forms 1
O Macro - paste as plain text Outlook VBA and Custom Forms 2
J Help Please!!! Outlook 2016 - VBA Macro for replying with attachment in meeting invite Outlook VBA and Custom Forms 9
witzker Macro to set contact reminder to next day 9:00 Outlook VBA and Custom Forms 45
M Adding Macro to populate "to" "subject" "body" not deleting email string below. Outlook VBA and Custom Forms 5
E Copying data from e-mail attachement to EXCEL file via macro Outlook VBA and Custom Forms 38

Similar threads

Top