Outlook SendUsingAccount to change from account

Status
Not open for further replies.
P

p912s

Hello! I have searched all over the web and have been unable to locate a

solution... the closest I came was a thread on here so I joined.

My problem is sending a message after changing the sending account in

VBA. I get an error - "You Cannot Send An Item That Is Already In The

Process Of Being Sent"

Here is the thread that talked about a solution using a timer to get

the message sent but I don't understand how to implement a timer in

Outlook - http://tinyurl.com/r79d4w

And here is my code - fairly simple, it gathers up the pop3 accounts

and presents them in a popup message to select the account to send from.

The selecting and changing accounts works fine but the messages can't be

sent. I have documented in the code where the error happens.

Thanks.

Option Explicit

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As

Boolean)

Dim oAccount As Outlook.Account

Dim strDefaultAccount As String, strMsg As String, strID As String

Dim strAccounts(100)

Dim c As Integer, i As Integer

Dim result As Variant

c = 1

'get default account

strDefaultAccount = Application.Session.Accounts(1).DisplayName

'get pop3 accounts

For Each oAccount In Application.Session.Accounts

If oAccount.AccountType = olPop3 Then

strAccounts(c) = c & " - " & oAccount

'Debug.Print strAccounts(c)

c = c + 1

End If

Next

'build inputbox account list

strMsg = "Click Ok to use default account or enter the number of

the account to use...." & vbCrLf

For i = 1 To c

strMsg = strMsg & vbCrLf & strAccounts(i)

Next i

'********************************************************

'message id

'I think this is the id i need to recall and send the message?

strID = Item.ConversationIndex

'********************************************************

'display inputbox

result = InputBox(strMsg, "Select Sending Account",

strDefaultAccount)

'act on user input

Select Case result

Case strDefaultAccount

'clicked ok - send from default account

Cancel = True

Set Item.SendUsingAccount =

Application.Session.Accounts(1)

'********************************************************

'send error - "You Cannot Send An Item That Is Already In

The Process Of Being Sent"

Item.Send

'********************************************************

Case IsNumeric(result)

'typed a number

If result <= i Then

Cancel = True

Set Item.SendUsingAccount =

Application.Session.Accounts(result)

'********************************************************

'send error - "You Cannot Send An Item That Is Already

In The Process Of Being Sent"

Item.Send

'********************************************************

Else

'entered incorrect number - stay in message

Cancel = True

End If

Case Else

'clicked cancel or invalid entry - stay in message

Cancel = True

End Select

End Sub

--
 
Application_ItemSend() is too late, the item has already been submitted to

the mail transport by that time with the original email address. Handle that

earlier in the Item.Send() event.

 
Thanks for the reply!

The above code is run from ThisOutlookSession so that when you click

the Send button on a message you're prompted to set the sending account.

Which as you point is to late to change the account.

In that code window my only choices are General and Application... the

only way I know I could get the Item.Send event would be to call it from

a button on a form. And I have tried that, in the Application.Send, set

Cancel =True and then call my form. And then from the form, set the

sending account and try and send the message, but I get the same error.

Is there any way to change the sending account after I have clicked the

Send Button?

Or can I edit the default email message and place my code behind the

Send Button?

Thanks.

p912s
 
In ThisOutlookSession put something like this at the module level:

Dim WithEvents colInsp As Outlook.Inspectors

Dim WithEvents oMail As Outlook.MailItem

In the Application_Startup() event handler instantiate the Inspectors

collection:

Set colInsp = Application.Inspectors

That will let you handle the NewInspector() event. In that event handler

something like this:

If Inspector.CurrentItem.Class = olMail Then

Set oMail = Inspector.CurrentItem

End If

That will let you handle the oMail.Send() event, which fires when you click

the Send button.

 
Status
Not open for further replies.
Similar threads
Thread starter Title Forum Replies Date
S Macro using .SendUsingAccount only works the first time, after starting Outlook Outlook VBA and Custom Forms 4
A Outlook can't remember outlook.com, Exchange password. Using Outlook 0
S Related messages show in main Outlook window vice new Advanced Find windows Using Outlook 1
H Force Outlook 2019 with GMail 2-Step to Require Login? Using Outlook 0
G Retaining Tabs in outlook body Using Outlook 2
V Setting up Outlook 2021 on new computer Using Outlook 2
G Add Map It button to Custom Contacts Form in Outlook Outlook VBA and Custom Forms 1
X Custom icon (not from Office 365) for a macro in Outlook Outlook VBA and Custom Forms 1
Victor_50 Problem - Google Workspace will stop "unsafe" access to Outlook end 2024 Using Outlook 3
C New pc, new outlook, is it possible to import auto-complete emailaddress Using Outlook 4
T Outlook 365 won't take new working password Using Outlook 0
S Create Outlook Task from Template and append Body with Email Body Outlook VBA and Custom Forms 4
P Can't add custom field to custom Outlook form, it always adds to the Folder instead Outlook VBA and Custom Forms 2
B Sync Outlook Public Folders to Contacts Using Outlook 2
D Delete Outlook emails from MS server Using Outlook 12
B Outlook tasks and PDF Using Outlook 4
D Outlook 2019 is no longer asking for password ... Using Outlook 5
Kika Melo How to mark as Junk any message not from Contacts (in Outlook.com) Using Outlook 3
L Outlook attachments from OneDrive as links Using Outlook 0
G Outlook 365 My iCloud Outlook doesn’t work after reinstalling Microsoft365 on Windows 10 PC – now I get error message on contacts and calendar Using Outlook 1
T How to Export & Import GMAIL Contacts into Outlook 2021 ? Using Outlook 4
M Synchronization and backup of Outlook from local to server. Using Outlook 8
T How to get an EVENT COLOR option in Outlook 2021 ? Using Outlook 0
K How can I delete an e-mail from Outlook Using Outlook 1
V Outlook Error The Attempted operation Failed. An Object Could Not be found Outlook VBA and Custom Forms 0
P Yahoo/IMAP folder rename by Outlook desktop 365 Using Outlook 0
A Outlook 2019 folder counter Using Outlook 0
A Relocate Search Bar in Outlook Using Outlook 2
e_a_g_l_e_p_i Need clarification on 2-Step Verification for Gmail using Outlook 2021 Using Outlook 10
L Opening People Outlook 2021 Using Outlook 2
e_a_g_l_e_p_i Outlook 2021 not letting me setup my Gmail using pop Using Outlook 1
Geldner Problem submitting SPAM using Outlook VBA Form Outlook VBA and Custom Forms 2
P VBA to add email address to Outlook 365 rule Outlook VBA and Custom Forms 0
M Outlook 2016 outlook vba to look into shared mailbox Outlook VBA and Custom Forms 0
P Can no longer sync Outlook with iPhone calendar after iPhone update to 17.1.1 Using Outlook 7
O Outlook - Switch from Exchange to IMAP Using Outlook 2
e_a_g_l_e_p_i Is it possible to have a reminder in Outlook 2021 for every 90 days Using Outlook 3
farrissf Outlook 2016 Optimizing Email Searches in Outlook 2016: Seeking Insights on Quick Search vs Advanced Search Features Using Outlook 0
C Advanced search terms for "Outlook Data File" Using Outlook 1
N Reply to Outlook messages by moving messages to a specific Outlook folder Outlook VBA and Custom Forms 1
O How to find out the domain and server settings that my Outlook is using? Using Outlook 2
A Outlook 365 (OutLook For Mac)Move "On My Computer" Folder Items From Old To New Mac Computer Using Outlook 3
H Integrating Alexa & Outlook Pro 2021 Using Outlook 2
Z Automatically adjust Outlook Reading Pane from bottom to right depending on portrait or landscape window Using Outlook 1
Rupert Dragwater Background colors not saving in Outlook 365 Using Outlook 15
petunia Outlook tasks module sunsetting? Exchange Server Administration 3
G Save emails as msg file from Outlook Web AddIn (Office JS) Outlook VBA and Custom Forms 0
D Outlook VBA forward the selected email to the original sender’s email ID (including the email used in TO, CC Field) from the email chain Outlook VBA and Custom Forms 2
U Outlook 2021 not showing contact cards in Searches Using Outlook 1
C Outlook - Macro to block senders domain - Macro Fix Outlook VBA and Custom Forms 1

Similar threads

Back
Top