Compartir a través de


Cómo: Buscar una dirección de correo electrónico en los contactos mediante programación

En este ejemplo se busca, en una carpeta de contactos, contactos que tengan el nombre de dominio example.com en sus direcciones de correo electrónico.

Se aplica a: La información de este tema se aplica a los proyectos de nivel de aplicación para Outlook 2013 y Outlook 2010. Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto de Office.

Ejemplo

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
    MsgBox(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);
}

Compilar el código

Para este ejemplo se necesita:

  • Contactos que tengan el nombre de dominio example.com en sus direcciones de correo electrónico (por ejemplo, somebody@example.com) y que tengan nombres y apellidos.

Vea también

Tareas

Cómo: Enviar un correo electrónico mediante programación

Cómo: Obtener acceso a los contactos de Outlook mediante programación

Cómo: Agregar una entrada a los contactos de Outlook mediante programación

Conceptos

Trabajar con contactos