MailItem.CustomAction event (Outlook)

Occurs when a custom action of an item (which is an instance of the parent object) executes.


expression. CustomAction( _Action_ , _Response_ , _Cancel_ )

expression A variable that represents a MailItem object.


Name Required/Optional Data type Description
Action Required Object The Action object.
Response Required Object The newly created item resulting from the custom action.
Cancel Required Boolean (Not used in VBScript). False when the event occurs. If the event procedure sets this argument to True, the custom action is not completed.


The Action object and the newly created item resulting from the custom action are passed to the event.

In Microsoft Visual Basic Scripting Edition (VBScript), if you set the return value of this function to False, the custom action operation is not completed.


This Visual Basic for Applications (VBA) example uses the CustomAction event to set the Subject property on the response item. Execute the AddAction procedure before executing the Initialize_Handler to create an item with a custom event called 'Link Original'.

Public WithEvents myItem As Outlook.MailItem 
Sub AddAction() 
 Dim myAction As Outlook.Action 
 Set myItem = Application.CreateItem(olMailItem) 
 Set myAction = myItem.Actions.Add 
 myAction.Name = "Link Original" 
 myAction.ShowOn = olMenuAndToolbar 
 myAction.ReplyStyle = olLinkOriginalItem 
 myItem.To = "Dan Wilson" 
 myItem.Subject = "Before" 
End Sub 
Sub Initialize_Handler() 
 Set myItem = Application.ActiveInspector.CurrentItem 
End Sub 
Private Sub myItem_CustomAction(ByVal Action As Object, ByVal Response As Object, Cancel As Boolean) 
 Select Case Action.Name 
 Case "Link Original" 
 Response.Subject = "Changed by VB Script" 
 Case Else 
 End Select 
End Sub

See also

MailItem Object

Support and feedback

Have questions or feedback about Office VBA or this documentation? Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.