Delete a Marketing Campaign
To delete a Marketing Campaign object programmatically, first select the object and then call the Delete method. The following C# and Visual Basic for Applications (VBA) examples show how to delete a Marketing Campaign object.
C#
private void DeleteMarketingCampaign()
{
Outlook.ApplicationClass _app = new Outlook.ApplicationClass();
Outlook.Application olApp = (Outlook.Application)_app;
Outlook.NameSpace olNameSpace = _app.GetNamespace("MAPI");
Outlook.Folders folders = olNameSpace.Session.Folders;
Outlook.Folder bcmRootFolder = (Outlook.Folder)folders["Business Contact Manager"];
Outlook.Folder campaignsFolder = (Outlook.Folder)bcmRootFolder.Folders["Marketing Campaigns"];
string strQuery = "[Subject] = 'New Marketing Campaign'";
Outlook.TaskItem campaignItem = (Outlook.TaskItem)campaignsFolder.Items.Find(strQuery);
if (campaignItem != null)
{
campaignItem.Delete();
}
else
{
Console.WriteLine("Campaign Not Found");
}
}
VBA
Sub DeleteMarketingCampaign()
Dim olApp As Outlook.Application
Dim objNS As Outlook.NameSpace
Dim olFolders As Outlook.Folders
Dim bcmRootFolder As Outlook.Folder
Dim bcmCampaignsFldr As Outlook.Folder
Dim existMarketingCampaign As Outlook.TaskItem
Set olApp = CreateObject("Outlook.Application")
Set objNS = olApp.GetNamespace("MAPI")
Set olFolders = objNS.Session.Folders
Set bcmRootFolder = olFolders("Business Contact Manager")
Set bcmCampaignsFldr = bcmRootFolder.Folders("Marketing Campaigns")
Set existMarketingCampaign = bcmCampaignsFldr.Items.Find("[Subject] = 'Sales Project with Wide World Importers'")
If Not TypeName(existMarketingCampaign) = "Nothing" Then
existMarketingCampaign.Delete
Else
MsgBox ("Marketing Campaign not found")
End If
Set existMarketingCampaign = Nothing
Set bcmCampaignsFldr = Nothing
Set bcmRootFolder = Nothing
Set olFolders = Nothing
Set objNS = Nothing
Set olApp = Nothing
End Sub
See Also
Create a Marketing Campaign | Select a Marketing Campaign | Edit a Marketing Campaign | 2007 Office System: Updated Developer Content