Solved

Outlook Form: Run Script on Send

Posted on 2003-12-01
6
660 Views
Last Modified: 2008-03-03
I'm currently coding a script that pops up a message box asking a user if they want to forward a copy of the e-mail they are sending to electronic document control.  This script works well enough when I link it to a command button, but I can't seem to get it to work when using the Send command.  Here is the script that works with the command button:

Sub CommandButton1_Click()    
    Set myItem = Application.ActiveInspector.CurrentItem
    answ = MsgBox ("Send a Copy to EDC?", vbYesNo )
    If (answ=vbYes) Then
        myItem.Recipients.Add("Electronic Document Control")
    End If
    Send
End Sub

And here is the code I am trying to get working with the Send function:

Function Item_Send()
    Set myItem = Application.ActiveInspector.CurrentItem
    answ = MsgBox ("Send a Copy to EDC?", vbYesNo )
    If (answ=vbYes) Then
        myItem.Recipients.Add("Electronic Document Control")
    End If
End Function

The error message I receive is - "The operation failed."  I have tried slipping a Send command into the function at the end, but it can't send in the middle of the Send function.

Operating System - Windows 2000 SP4
Application - Outlook 2000 (SP2)

Any help is greatly appreciated as I cannot find detailed references for the send function.

Garth
0
Comment
Question by:Braech
  • 3
  • 2
6 Comments
 
LVL 8

Expert Comment

by:jessnjeff
ID: 9852834
This may sound dumb, but I have been designing Outlook forms for over 2 years now and have NEVER gotten the send code to work.  I was forced to resort to removing all the toolbars so users can't use the send button and adding my own send button.  Or I cancel the action when the send button is used.  Not a real answer, but an alternative to your problem.
0
 

Author Comment

by:Braech
ID: 9867527
Jessnjeff,
     Any sample scripts for removing toolbars and cancelling send actions?  It must be frustrating as a forms designer to be unable to modify the default Send script to perform customized actions.  Thanks for the response.

Garth
0
 

Author Comment

by:Braech
ID: 9868217
After thinking over your solution, perhaps replacing the existing Send button with a macro button would be the way to go.  I've created a macro using the code below and then added it to the default mail message form using the Customize toolbar option.  Something along the lines of:

Sub EDC_Click()

    Set myItem = Application.ActiveInspector.CurrentItem
    answ = MsgBox("Send a Copy to EDC?", vbYesNo)
    If (answ = vbYes) Then
        myItem.Recipients.Add ("Electronic Document Control")
    End If
    myItem.Send

End Sub

This code prompts the user if he/she wants to include the EDC, but it fails at this point for some reason.  It appears to be caught up on the myItem.Send command, but perhaps you have an idea.  Thanks.

Garth
0
 

Author Comment

by:Braech
ID: 9868292
The problem appears to have been that Electronic Document Control was an invalid e-mail address.  Removing the standard Send button and replacing it with mine seems to fix the issue.  It has not disabled Ctrl-Enter Send command.
0
 
LVL 8

Accepted Solution

by:
jessnjeff earned 250 total points
ID: 9874437
Also, it is always a good idea to resolve all addresses before sending

Example


Set myRecipients = myItem.Recipients
If Not myRecipients.ResolveAll Then
    For Each myRecipient In myRecipients
        If Not myRecipient.Resolved Then
            OTHER CODE HERE
        End If
     Next
End If
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Resolve DNS query failed errors for Exchange
Resolve Outlook connectivity issues after moving mailbox to new Exchange 2016 server
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
This video shows how to remove a single email address from the Outlook 2010 Auto Suggestion memory. NOTE: For Outlook 2016 and 2013 perform the exact same steps. Open a new email: Click the New email button in Outlook. Start typing the address: …

914 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now