Partager via


Comment : rechercher une adresse de messagerie dans les contacts

Mise à jour : novembre 2007

S'applique à

Les informations dans cette rubrique s'appliquent uniquement aux projets Visual Studio Tools pour Office et versions de Microsoft Office spécifiés.

Type de projet

  • Projets au niveau de l'application

Version de Microsoft Office

  • Outlook 2003

  • Outlook 2007

Pour plus d'informations, consultez Fonctionnalités disponibles par type d'application et de projet.

Cet exemple recherche, dans un dossier de contact, des contacts dont l'adresse électronique présente le même nom de domaine, example.com.

Exemple

Private Sub ThisAddIn_Startup(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Startup
    SearchForEmail("example.com")
End Sub

Public Sub SearchForEmail(ByVal partialAddress As String)
    Dim contactMessage As String = String.Empty
    Dim contacts As Outlook.MAPIFolder = Me.Application.ActiveExplorer().Session _
        .GetDefaultFolder(Outlook.OlDefaultFolders.olFolderContacts)
    For Each foundContact As Outlook.ContactItem In contacts.Items
        If Not (foundContact.Email1Address Is Nothing) Then
            If foundContact.Email1Address.Contains(partialAddress) Then
                contactMessage = contactMessage & "New contact" _
                & foundContact.FirstName & " " & foundContact.LastName _
                & " Email Address is " & foundContact.Email1Address & _
                ". " & vbCrLf
            End If
        End If
    Next
    If contactMessage.Length > 0 Then
    Else
        contactMessage = "No Contacts were found."
    End If
    MessageBox.Show(contactMessage)
End Sub
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
    SearchforEmail("example.com");
}

private void SearchforEmail(string partialAddress)
{
    string contactMessage = string.Empty;
    Outlook.MAPIFolder contacts = (Outlook.MAPIFolder)
        this.Application.ActiveExplorer().Session.GetDefaultFolder
         (Outlook.OlDefaultFolders.olFolderContacts);
    foreach (Outlook.ContactItem foundContact in contacts.Items)
    {
                     if (foundContact.Email1Address != null)
                     {              
                         if (foundContact.Email1Address.Contains(partialAddress))
         {
            contactMessage = contactMessage + "New contact"
            + foundContact.FirstName + " " + foundContact.LastName
            + " Email Address is " + foundContact.Email1Address +
            ". \n";
         }
                     } 
    }
    if (!(contactMessage.Length > 0))
    {
        contactMessage = "No Contacts were found.";
    }
    MessageBox.Show(contactMessage);
}

Compilation du code

Cet exemple nécessite :

  • Des contacts dont l'adresse électronique présente le nom de domaine example.com (par exemple, somebody@example.com), et disposant de noms et de prénoms.

Voir aussi

Tâches

Comment : envoyer un message électronique par programme

Comment : accéder aux contacts Outlook

Comment : ajouter une entrée aux contacts Outlook

Concepts

Utilisation des éléments de contact