Como utilizar a Automatização para enviar uma mensagem do Microsoft Outlook usando o Access 2000
Resumo
Este artigo mostra como usar a Automação para criar e enviar uma mensagem do Microsoft Outlook no Microsoft Access 2000.A Microsoft fornece exemplos de programação apenas para ilustração, sem garantia expressa ou implícita. Isso inclui, mas não se limita a, as garantias implícitas de comercialização ou adequação a uma finalidade específica. Este artigo assume que você está familiarizado com a linguagem de programação que está sendo demonstrada e com as ferramentas usadas para criar e depurar procedimentos. Os engenheiros de suporte da Microsoft podem ajudar a explicar a funcionalidade de um procedimento específico, mas não modificarão esses exemplos para fornecer funcionalidades adicionais ou construir procedimentos para atender aos seus requisitos específicos. Nota: o código a seguir pode não funcionar corretamente se você tiver instalado a atualização de segurança de E-mail do Outlook. Para obter informações adicionais sobre esta actualização, consulte um dos seguintes artigos na base de dados de Conhecimento, dependendo de qual versão do Outlook você ter:
262631 OL2000: Informações Sobre a Segurança de email do Outlook Atualização
262617 OL98: Informações Sobre a Segurança de email do Outlook Atualização
Você pode usar o método SendObject para enviar uma mensagem de email MAPI programaticamente no Microsoft Access. No entanto, o método SendObject não dá acesso à funcionalidade de email completa, como a capacidade de anexar um arquivo externo ou definir a importância da mensagem. O exemplo a seguir usa automação para criar e enviar uma mensagem de email que você pode usar para aproveitar muitos recursos do Microsoft Outlook que não estão disponíveis com o método SendObject.
existem seis etapas principais para enviar uma mensagem de email do Microsoft Outlook usando a automação, da seguinte forma:
-
inicialize a sessão do Outlook.
-
crie uma nova mensagem.
-
adicione os destinatários (To, CC e BCC) e resolva seus nomes.
-
defina propriedades válidas, como assunto, corpo e importância.
-
adicione anexos (se houver).
-
exibir / enviar a mensagem.
enviando uma mensagem de email do Microsoft Outlook programaticamente
-
crie um arquivo de texto de exemplo chamado clientes.txt no C:\My pasta Documentos.
-
Inicie o Microsoft Access e abra o banco de dados de amostra Northwind.mdb.
-
crie um módulo e digite a seguinte linha na seção declarações se ainda não estiver lá:
Option Explicit
-
no menu Ferramentas, clique em referências.
-
na caixa Referências, clique para selecionar a biblioteca de objetos do Microsoft Outlook 9.0 e clique em OK.
Nota: Se a biblioteca de objetos do Microsoft Outlook 9.0 não aparecer na caixa referências disponíveis, procure o disco rígido do arquivo, Msoutl9.olb. Se você não conseguir localizar este arquivo, você deve executar o programa de configuração do Microsoft Outlook para instalá-lo antes de prosseguir com este exemplo. -
Digite o seguinte procedimento no módulo novo:
Sub SendMessage(Optional AttachmentPath)
Dim objOutlook As Outlook.Application
Dim objOutlookMsg As Outlook.MailItem
Dim objOutlookRecip As Outlook.Recipient
Dim objOutlookAttach As Outlook.Attachment
' Create the Outlook session.
Set objOutlook = CreateObject("Outlook.Application")
' Create the message.
Set objOutlookMsg = objOutlook.CreateItem(olMailItem)
With objOutlookMsg
' Add the To recipient(s) to the message.
Set objOutlookRecip = .Recipients.Add("Nancy Davolio")
objOutlookRecip.Type = olTo
' Add the CC recipient(s) to the message.
Set objOutlookRecip = .Recipients.Add("Andrew Fuller")
objOutlookRecip.Type = olCC
' Set the Subject, Body, and Importance of the message.
.Subject = "This is an Automation test with Microsoft Outlook"
.Body = "Last test - I promise." & vbCrLf & vbCrLf
.Importance = olImportanceHigh 'High importance
' Add attachments to the message.
If Not IsMissing(AttachmentPath) Then
Set objOutlookAttach = .Attachments.Add(AttachmentPath)
End If
' Resolve each Recipient's name.
For Each objOutlookRecip In .Recipients
objOutlookRecip.Resolve
If Not objOutlookRecip.Resolve Then
objOutlookMsg.Display
End If
Next
.Send
End With
Set objOutlookMsg = Nothing
Set objOutlook = Nothing
End Sub -
Para testar este procedimento, escreva a seguinte linha na janela verificação Imediata e, em seguida, prima ENTER:
SendMessage "C:\My Documents\Customers.txt"
Para enviar a mensagem sem especificar um anexo, omitir o argumento ao chamar o procedimento, como se segue:
SendMessage