Compartilhar via


Como pesquisar em uma pasta específica programaticamente

Este exemplo de código usa os métodos de Find e de FindNext para procurar pelo texto no campo com tema das mensagens de email que estão em Caixa de Entrada.Este método usa um filtro de cadeia de caracteres para verificar a letra T como a letra inicial do texto de Subject .

Aplicável a: As informações neste tópico se aplicam a projetos de nível de aplicativo para Outlook 2013 e Outlook 2010. Para obter mais informações, consulte Recursos disponíveis pelo aplicativo do Office e o tipo de projeto.

Exemplo

    Private Sub SearchInBox()
        Dim inbox As Outlook.MAPIFolder = Me.Application.ActiveExplorer().Session. _
            GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox)
        Dim items As Outlook.Items = inbox.Items
        Dim mailItem As Outlook.MailItem = Nothing
        Dim folderItem As Object
        Dim subjectName As String = String.Empty
        Dim filter As String = "[Subject] > 's' And [Subject] <'u'"
        folderItem = items.Find(filter)
        While (folderItem IsNot Nothing)
            mailItem = TryCast(folderItem, Outlook.MailItem)
            If mailItem IsNot Nothing Then
                subjectName = vbCrLf & mailItem.Subject
            End If
            folderItem = items.FindNext()
        End While
        subjectName = "The following e-mail messages were found: " _
            & subjectName
        MsgBox(subjectName)
    End Sub

        private void SearchInBox()
        {
            Outlook.MAPIFolder inbox = this.Application.ActiveExplorer().Session.
                GetDefaultFolder(Outlook.OlDefaultFolders.olFolderInbox);
            Outlook.Items items = inbox.Items;
            Outlook.MailItem mailItem = null;
            object folderItem;
            string subjectName = string.Empty;
            string filter = "[Subject] > 's' And [Subject] <'u'";
            folderItem = items.Find(filter);
            while (folderItem != null)
            {
                mailItem = folderItem as Outlook.MailItem;
                if (mailItem != null)
                {
                    subjectName += "\n" + mailItem.Subject;
                }
                folderItem = items.FindNext();
            }
            subjectName = " The following e-mail messages were found: " +
                subjectName;
            MessageBox.Show(subjectName);
        }

Consulte também

Tarefas

Como recuperar uma pasta por nome programaticamente

Conceitos

Trabalhando com pastas

Outros recursos

Visão geral sobre o modelo de objeto do Outlook