Home  Fees/Services  Access Templates  Tutorials  Access Download  Articles  Search  Contact  Privacy  Links

Visual Basic Tutorial
   
Access Programming Examples
How To Read Email From Microsoft Access

Read Outlook Email From Access Visual Basic for Microsoft Access
Microsoft Access Tutorial>Visual Basic Tutorial>Read Email Access Download VBA Example  



VB Age Calculation
VB6 Change Case
Calculate Running Sum
VB Concatenate Records
VB CreateQueryDef
VB6 Database Path
Detail-Master Update
VB Field Validation VBA
VB Field Value New-Old
VB FindFirst Recordset
Get Version Number
VB Global Parameters
Global Variables
Labels as Links
VB Launch Outlook
VB List Box Files List
VB Mail Merge
OutputTo Crosstab
VB Read Email Access
VB Sort Recordset
VB Recordset Filters
VB Reference Form Field
RTF Report Email
VB Select Case
Email From Access
VB Transaction Processing

Visual Basic Function Examples


Read Email In To Microsoft Access Database

Reading email with Visual Basic API and create your own spam filter?  You can by reading Outlook emails from Microsoft Access.

There are three VB code samples demonstrating methods to communicate between Microsoft Access database and Microsoft Outlook for the purpose of sending and receiving emails programmatically using VBA:

MS Outlook provides a Visual Basic MAPI API to read email from Access VB and process attachments too.  In the example below we connect to the Microsoft Outlook inbox via the API and loop through each email message while storing parts of the email into a table:

Private Sub ReadInbox
Dim TempRst As DAO.Recordset
Dim rst As DAO.Recordset
Dim OlApp As Outlook.Application
Dim Inbox As Outlook.MAPIFolder
Dim InboxItems As Outlook.Items
Dim Mailobject As Object
Dim db As DAO.Database
Dim dealer As Integer
DoCmd.RunSQL "Delete * from tbl_outlooktemp"
Set db = CurrentDb

Set OlApp = CreateObject("Outlook.Application")
Set Inbox = OlApp.GetNamespace("Mapi").GetDefaultFolder(olFolderInbox)
Set TempRst = CurrentDb.OpenRecordset("tbl_OutlookTemp")
'
Set InboxItems = Inbox.Items
'
For Each Mailobject In InboxItems
    If Mailobject.UnRead Then
    With TempRst
       
        .AddNew
        !Subject = Mailobject.Subject
        !from = Mailobject.SenderName
        !To = Mailobject.To
        !Body = Mailobject.Body
        !DateSent = Mailobject.SentOn
        .Update
        Mailobject.UnRead = False
    End With
End If
Next

Set OlApp = Nothing
Set Inbox = Nothing
Set InboxItems = Nothing
Set Mailobject = Nothing
Set TempRst = Nothing

End Sub

To create your own spam filter you can use use several techniques.  Some examples are

  • Connect to the Outlook address book and check incoming addresses against your email address entries

  • Create a table of exclusion words for emails and use the Instr() function to scan for excluded words

  • Create a table of inclusion words to grab read email with these words.

To learn how to Send Outlook emails using Microsoft Access.


Contact Information

Programming Visual Basic Tutorial

Access Visual Basic/VB/VBA/VBScript/VB6 2007 2003 2000 All Windows Versions