OL2000: How to Programmatically Set a Form's From Field

ID: Q232309


The information in this article applies to:
  • Microsoft Outlook 2000


SUMMARY

You cannot directly change an item's From field using any programming methods in Microsoft Exchange or Outlook. If you could, mail could be sent on someone else's behalf without their permission, therefore the From field is read-only.

You can use the SentOnBehalfOfName property to set the From field, provided that you were given delegate permissions to send mail on someone else's behalf.


MORE INFORMATION

Microsoft provides programming examples for illustration only, without warranty either expressed or implied, including, but not limited to, the implied warranties of merchantability and/or fitness for a particular purpose. This article assumes that you are familiar with the programming language being demonstrated and the tools used to create and debug procedures. Microsoft support professionals can help explain the functionality of a particular procedure, but they will not modify these examples to provide added functionality or construct procedures to meet your specific needs. If you have limited programming experience, you may want to contact a Microsoft Certified Solution Provider or the Microsoft fee-based consulting line at (800) 936-5200. For more information about Microsoft Certified Solution Providers, please see the following page on the World Wide Web:

http://www.microsoft.com/mcsp/
For more information about the support options available from Microsoft, please see the following page on the World Wide Web:

http://www.microsoft.com/support/supportnet/overview/overview.asp
You can use the Microsoft Outlook object model to populate various fields on a form. When you create a mail message (MailItem) form to send to someone, the To, Cc, and Bcc fields are set by using the Recipients collection.

The following sample code demonstrates how to create a new mail message and populate the CC: line.

NOTE: These code examples illustrate using Automation from another program. Be sure to set a reference to the Microsoft Outlook 9.0 Object Library before running this code.

Sub TestFrom()

   Dim myOlApp as Outlook.Application
   Dim myItem as Outlook.MailItem

   ' Create an Outlook application object
   Set myOlApp = New Outlook.Application

   ' Creates a new MailItem form
   Set myItem = myOlApp.CreateItem(olMailItem)

   ' Add Jon Grande to the Recipients collection
   Set myRecipient = myItem.Recipients.Add("Jon Grande")

   ' Set the CC field to the Recipients collection defined above
   myRecipient.Type = olCC

   ' Display the item
   myItem.Display

End Sub 
You can use the constants olTo, olCC, and olBCC to set the To, Cc, and Bbc address fields of the MailItem. However, olOriginator does not set the From field.

To set the From field, use the SentOnBehalfOfName property of the Item object. The following example demonstrates the use of the SentOnBehalfOfName property:

Sub TestSentOnBehalfOfName()

   Dim myOlApp as Outlook.Application
   Dim myItem as Outlook.MailItem

   ' Create an Outlook application object
   Set myOlApp = New Outlook.Application

   ' Creates a new MailItem form
   Set myItem = myOlApp.CreateItem(olMailItem)

   ' Set the "From" field
   myItem.SentOnBehalfOfName = "Jon Grande"

   ' Display the item
   myItem.Display

End Sub 


REFERENCES

For additional information about available resources and answers to commonly asked questions about Microsoft Outlook 2000 solutions, please see the following article in the Microsoft Knowledge Base:

Q146636 OL2000: Questions About Custom Forms and Outlook Solutions

Additional query words: OutSol OutSol2000 vbscript

Keywords : kbdta
Version : WINDOWS:2000
Platform : WINDOWS
Issue type : kbhowto


Last Reviewed: November 13, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.