VBA: How to Create a New Contact Item in Outlook with Automation

Last reviewed: February 27, 1998
Article ID: Q161012
The information in this article applies to:
  • Microsoft Access versions 7.0, 97
  • Microsoft Outlook 97

SUMMARY

Advanced: Requires expert coding, interoperability, and multiuser skills.

This article demonstrates how to use Automation from a Microsoft Access form to start Microsoft Outlook and display a new contact screen for input. You can change just one line of code to make this example apply to a new Microsoft Outlook appointment, journal entry, mail message, note, post, or task.

For information about how to run Microsoft Schedule+ with Automation, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q147633
   TITLE     : ACC: How to Run Schedule+ from MS Access Using Automation

This article assumes that you are familiar with Visual Basic for Applications and with creating Microsoft Access applications using the programming tools provided with Microsoft Access. For more information about Visual Basic for Applications, please refer to your version of the "Building Applications with Microsoft Access" manual.

MORE INFORMATION

The following example shows how to create a form in Microsoft Access that starts Microsoft Outlook from a command button. Then, the Automation code opens a new contact screen for input in Microsoft Outlook. After you enter the contact, and save and close the contact form, the Automation code quits Microsoft Outlook and returns to the Microsoft Access form.

To run Microsoft Outlook from a Microsoft Access form, follow these steps:

  1. Open the sample database Northwind.mdb.

  2. Create a new form not based on any table or query in Design view:

          Form: FrmOutlook
          ---------------------------
          Caption: Outlook Form
    

          Command button:
    
             Name: RunOutlook
             Caption: Start Outlook
             OnClick: =StartOutlook()
    
    

  3. On the View menu, click Code to open the form module.

  4. On the Tools menu, click References.

  5. Click Microsoft Outlook 8.0 Object Library in the Available References box. If it does not appear in the list, click the Browse button and browse for MSOutl8.olb, which is installed by default in the C:\Program Files\Microsoft Office\Office folder.

  6. Click OK to close the References dialog box.

  7. Type the following procedure in the form's code module:

          Public Function StartOutLook()
    
             On Error GoTo StartOutLook_Error
             Dim spObj As Object, MyItem As Object
    
             ' Create a Microsoft OutLook object.
             Set spObj = CreateObject("Outlook.Application")
    
             ' Create and open new contact form for input.
             ' You can substitute olAppointmentItem, olJournalItem, olMailItem,
             ' olNoteItem, olPostItem, or olTaskItem for olContactItem.
              Set MyItem = spObj.CreateItem(olContactItem)
              MyItem.Display
    
             ' Quit Microsoft Outlook.
              Set spObj = Nothing
              Exit Function
    
          StartOutLook_Error:
             MsgBox "Error: " & Err & " " & Error
             Exit Function
          End Function
    
    

  8. Close the module and switch the form to Form view.

  9. Click the Start Outlook button. Note that Microsoft Outlook starts and displays a new contact screen.

REFERENCES

For more information about using Automation with Microsoft Outlook, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q160502
   TITLE     : ACC: Using Automation to Add Appointments to Microsoft
               Outlook

For more information about using Automation to work with other programs, search the Help Index for "Automation, overview," or ask the Microsoft Access 97 Office Assistant.


Additional query words: OutSol OutSol97
Keywords : kbinterop IntpOleA kbfaq
Technology : kbole
Version : 7.0 97
Platform : WINDOWS
Hardware : x86
Issue type : kbinfo


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: February 27, 1998
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.